分组数据
数据分组:select column_name count(*) as new_name
from table_name
group by column_name ---分组语法
having count(*)>= 100;---筛选组别语法
输入▼
SELECT vend_id, COUNT(*) AS num_prods
FROM Products
WHERE prod_price >= 4
GROUP BY vend_id (having和where共用,where 限定 ‘ 行数据 ’ ,having限制 ‘组数据’ )
HAVING COUNT(*) >= 2;
输出▼
vend_id num_prods
------- -----------
BRS01 3
FNG01 2
分析▼
这条语句中,第一行是使用了聚集函数的基本 SELECT 语句,很像前面的
例子。WHERE 子句过滤所有 prod_price 至少为 4 的行,然后按 vend_id
分组数据,HAVING 子句过滤计数为 2 或 2 以上的分组。如果没有 WHERE
子句,就会多检索出一行(供应商 DLL01,销售 4 个产品,价格都在 4
以下)
数据分组后排序:select column_name count(*) as new_name
from table_name
group by column_name ---分组语法
having count(*)>= 100;---筛选组别语法
from table_name
group by column_name ---分组语法
having count(*)>= 100;---筛选组别语法
order by new_name,column_name---排序组别语法