Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何使用Laravel的Elount使非主列在返回的结果集中唯一?_Mysql_Laravel_Eloquent - Fatal编程技术网

Mysql 如何使用Laravel的Elount使非主列在返回的结果集中唯一?

Mysql 如何使用Laravel的Elount使非主列在返回的结果集中唯一?,mysql,laravel,eloquent,Mysql,Laravel,Eloquent,在下面的例子中,我请求所有州为CO的大学,但我想说groupBy'name'或其他什么,以便获得一个大学名称记录 我尝试时出现以下错误: # Error: SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'imr.colleges.id' which is

在下面的例子中,我请求所有州为CO的大学,但我想说groupBy'name'或其他什么,以便获得一个大学名称记录

我尝试时出现以下错误:

# Error:
SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'imr.colleges.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by (SQL: select * from `colleges` where `state` = CO group by `name` limit 15 offset 135)

# Code:
College::where('state',$state)->groupBy('name')->paginate(15);
我并不特别关心返回哪个学院id,我只想能够返回每个州的每个学院名称中的一个

感谢您的帮助

试试这个

College::selectRaw('GROUP_CONCAT(id), name, GROUP_CONCAT(state)')->where('state',$state)->groupBy('name')->paginate(15);
试试这个

College::selectRaw('GROUP_CONCAT(id), name, GROUP_CONCAT(state)')->where('state',$state)->groupBy('name')->paginate(15);

我也更新了城市专栏的答案。请再试一次。或者你可以完全从查询中省略城市,因为你只需要学院的名称!我也更新了城市专栏的答案。请再试一次。或者你可以完全从查询中省略城市,因为你只需要学院的名称!