数据库分组数据

1、创建分组

示例:
根据vend_id分组显示

select vend_id, count(\*) 
    as num_prods 
    from products 
    group by vend_id
2、过滤分组(having)

利用分组过滤行数据,示例:

select cust_id, count(\) 
    as orders 
    from orders 
    group by cust_id 
    having count(\*) >= 2

该语句会根据cust_id进行分组并过滤出orders>=2的分组

3、having和where的区别:

where在数据分组前进行过滤,having在数据分组后进行过滤,这是一个重要的区别,where排除的行不包括在分组中,这可能会改变计算之,从而影响having子句中基于这些值过滤掉的分组。

4、select子句的顺序
子句 说明 是否必须使用
SELECT 要返回的列或表达式
FROM 从中检索数据的表 尽在从表选择数据时使用
WHERE 行级过滤
GROUP 分组说明 仅在按组计算聚集时使用
HAVING 组级过滤
ORDER BY 输出排序顺序
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章