mysql语法问题,哪位能帮我一下,谢谢

SELECT MTAUT_ID,MTAUT_NAME,MTAUT_PARID,MTAUT_INDEX FROM MT005AUT GROUP BY MTAUT_PARID,MTAUT_INDEX DESC

想用group by分组排序
报错,Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'mtiansystem.MT005AUT.MTAUT_ID' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

6个回答

你select里可以查聚合函数(如COUNT, AVERAGE之类的),也可以查询group里的有的列。
但是你“MTAUT_ID , MTAUT_NAME”这两列既不是聚合函数,也不在后面group by里,所以会出错。

我是来凑热闹的。。楼上正解

group by 排序
举个例子
a b c
1 2 3
1 2 4
select * from table group by a,b的话
结果是
a b c
1 2 3
select a,count(c) from table group by a,b
结果
a count(c)
1 2
只能select表里有的列和聚合函数,如果清楚这个,应该检查下单词打的对不对,也许列名错了

楼主,百度一下关键字"sql_mode=only_full_group_by" 问题即可解决

使用group by 分组,查询的列要么是聚合函数要么是要分组的列

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问