一尘不染

Laravel:语法错误或访问冲突:1055错误

php

我想在同一查询中使用WhereIn和Groupby来获取结果。

我已经试过了:

$loadids=explode("#@*",$reciptdet->loading_id);
$loadingdatas=DB::table('loading')->groupBy('vehicle_no')->whereIn('id',$loadids)->get();

但是我得到了这个错误信息:

SQLSTATE [42000]:语法错误或访问冲突:1055’sbrtpt.loading.id’不在GROUP
BY中(SQL:从中选择从(14,15,16)组中的id按Vehicle_no进行加载)


阅读 385

收藏
2020-05-26

共1个答案

一尘不染

简短答案

config\database.php-> "mysql"数组中

设置'strict' => false为全部禁用。

.... 要么

您可以离开'strict' => true模式并"mysql"在其中添加选项

'mysql' => [
       ...
       ....
       'strict' => true,
       'modes' => [
            //'ONLY_FULL_GROUP_BY', // Disable this to allow grouping by one column
            'STRICT_TRANS_TABLES',
            'NO_ZERO_IN_DATE',
            'NO_ZERO_DATE',
            'ERROR_FOR_DIVISION_BY_ZERO',
            'NO_AUTO_CREATE_USER',
            'NO_ENGINE_SUBSTITUTION'
        ],
 ]

2020-05-26