我已经设置了 Laravel Yajra 数据表后端包来处理通过 jquery 数据表查看的 ajax 查询调用的工作。一切都很好,直到我改变了雄辩的查询:
static function for_table($farm_ids)
{
return ChemProgramUser::select('chemprogramuser.id', 'chemprogramuser.farms_id as fid',
'chemprogramuser.description as head', 'chemprogramuser.hectares as ha',
'chemprogramapp.updated_at',
'farms.name as fname', 'users.name', 'users.id as uid', 'chemprogramuser.type')
->leftJoin('farms', 'farms.id', '=', 'chemprogramuser.farms_id')
->leftJoin('users', 'users.id', '=', 'chemprogramuser.manager_id')
->groupBy('chemprogramuser.id')
->orderBy('chemprogramuser.id', 'desc')
->where('chemprogramuser.program', '=', 1)
->whereIn('chemprogramuser.farms_id', $farm_ids)
->get();
至
static function for_table($farm_ids)
{
return ChemProgramUser::select('chemprogramuser.id', 'chemprogramuser.farms_id as fid',
'chemprogramuser.description as head', 'chemprogramuser.hectares as ha',
DB::raw('GREATEST(chemprogramuser.updated_at, COALESCE(chemprogramapp.updated_at, \'1000-01-01\')) AS updated_at'), // this raw query caused the error
'farms.name as fname', 'users.name', 'users.id as uid', 'chemprogramuser.type')
->leftJoin('farms', 'farms.id', '=', 'chemprogramuser.farms_id')
->leftJoin('users', 'users.id', '=', 'chemprogramuser.manager_id')
->leftJoin('chemprogramapp', 'chemprogramapp.programuser_id', '=', 'chemprogramuser.id')
->groupBy('chemprogramuser.id')
->orderBy('chemprogramuser.id', 'desc')
->where('chemprogramuser.program', '=', 1)
->whereIn('chemprogramuser.farms_id', $farm_ids)
->get();
我正在使用外观的方法GREATEST
从两个表中选择日期。一旦我更改了查询,我就收到了一个带有 message的 jquery 。但这只是在生产服务器上,而不是在我的本地主机上。DB
raw
InvalidArgumentException
Trailing data
有人可以告诉我为什么会发生这个错误吗?
Laravel 版本:5.6.39