I want use WhereIn and Groupby in Same Query to fetch Result.
I've tried this:
$loadids=explode("#@*",$reciptdet->loading_id);
$loadingdatas=DB::table('loading')->groupBy('vehicle_no')->whereIn('id',$loadids)->get();
But I got this error message:
SQLSTATE[42000]: Syntax error or access violation: 1055 'sbrtpt.loading.id' isn't in GROUP BY (SQL: select * from loading where id in (14, 15, 16) group by vehicle_no)
Whenever using groupBy in eloquent, always include the column name used in the groupBy function in the select() function.
Also it is a bad practice to disable strict mode in the config file. Doing so may cause corrupt data to enter the database such as invalid dates without any warnings.Don't do that unless absolutely necessary.
Short answer
In
config\database.php
-->"mysql"
arraySet
'strict' => false
to disable all..... or
You can leave
'strict' => true
and add modes to"mysql"
option inDetailed answer
You may not need to disable all strict options ... Kindly have a look on this answer about this issue.
This is probably a SQL_MODE problem. In your
config/database.php
, in the connection, changeAs in
I was having this problem also but after changing
'strict' => true
, to'strict' => false
.In:
the error disappear.