我在dbvisualizer
中执行以下sqlSelect column1,column2,column3 from table group by column3;
显示以下错误:
15:47:09 [SELECT - 0 row(s), 0.000 secs] [Error Code: 979, SQL State: 42000] ORA-00979: not a GROUP BY expression ... 1 statement(s) executed, 0 row(s) affected, exec/fetch time: 0.000/0.000 sec [0 successful, 0 warnings, 1 errors]
但是当我像以下那样查询时它会给出结果:
Select column1 from table group by column1;
查询或某些配置或支持问题是否存在语法错误。
答案 0 :(得分:0)
在group by
statement中,您应指定select
中相同的列(总和,计数等除外)
所以你的查询
Select column1,column2,column3 from table group by column3;
应该是
Select column1,column2,column3 from table group by column1,column2,column3;
答案 1 :(得分:0)
SELECT CLAUSE AND GROUP BY CLAUSE列就像HUSBAND AND WIFE。您在SELECT中执行的聚合操作是它们的子节点。我的意思是说SELECT和GROUP BY CLAUSE中应该有相同数量的列。它是拇指规则。