group by 放sql 语句什么位置

group by放在sql 语句的什么后面,是不是一般都放在句末。

group by的意思分组汇总,在用到聚合函数时的分组需要用到。
其后的HAVING子句是对汇总结果的条件删选,就是说先汇总了后,去匹对是否符合条件。

举个例子,如果要看各国的90年代的平均GDP值,平均GDP值小于2的不要显示。

表中的格式是(值我乱写的)
国家 年份 GDP
--------------
USA 1989 29
USA 1990 30
USA 1991 35
USA 1992 34.7
.............
PRC 1989 3.8
PRC 1990 4
PRC 1990 4.5
..........

SELECT 国家,AVG(GDP) 平均GDP
FROM 表
WHERE 年份 BETWEEN 1990 AND 1999
GROUP BY 国家
HAVING AVG(GDP)>=2--小于2的不要,即大于等于2
ORDER BY 1

显示结果
国家 平均GDP
------------
USA 33
PRC 7
........

明白了不?大学教育的悲哀啊
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-10

一般放在语句末尾,起分组作用,

以下语句即按 deptno 字段分组统计数量

select deptno , count(*) from emp group by deptno ;

第2个回答  2010-01-05
不是,一般放在where子句的后面,在group by后面还可以跟having子句。
第3个回答  2010-01-05
Select * from table group by field

一般放在where子句的后面,在group by后面还可以跟having子句
第4个回答  2010-01-05
不是,例如:
$sql ="select count(sex) from table group by sex limit 10";
group by 一般要与 count, sum 等关键词连用。
相似回答