Laraveleloquent限额查询
Laravel eloquent limit query
我有 3 个表 TAble,TableB 和 TableC。
每个都有 100 万个寄存器。
我有 Laravel eloquent 查询。
$list= TableA::with([
'TableB',
'TableC'
])
->whereIn('field1',['A','B','C'])
->where('created_at','>=','2018-01-01') ->orderBy('fieldC', 'ASC')->orderBy('created_at', 'ASC')
->get()
->take(50) ;
TableA 有 TableB 和 TableC 这样映射。
public function TableB(){
return $this->belongsTo('TableB', 'fk_id', 'id');
}
public function TableC(){
return $this->hasMany('TableC');
}
我如何执行此查询以限制 "TableB" 和 "TableC" 中的注册数。
如果我使用 take() 它只会限制最终结果。
你想做什么?
如果您想分块处理数据,请使用
->chunk(50, function ($data) use ($variable) {
//process
});
如果你想在带页面的表格中显示数据,请使用分页。
我有 3 个表 TAble,TableB 和 TableC。 每个都有 100 万个寄存器。
我有 Laravel eloquent 查询。
$list= TableA::with([
'TableB',
'TableC'
])
->whereIn('field1',['A','B','C'])
->where('created_at','>=','2018-01-01') ->orderBy('fieldC', 'ASC')->orderBy('created_at', 'ASC')
->get()
->take(50) ;
TableA 有 TableB 和 TableC 这样映射。
public function TableB(){
return $this->belongsTo('TableB', 'fk_id', 'id');
}
public function TableC(){
return $this->hasMany('TableC');
}
我如何执行此查询以限制 "TableB" 和 "TableC" 中的注册数。 如果我使用 take() 它只会限制最终结果。
你想做什么? 如果您想分块处理数据,请使用
->chunk(50, function ($data) use ($variable) {
//process
});
如果你想在带页面的表格中显示数据,请使用分页。