数据库分组数据

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Abel_Liujinquan/article/details/89180533
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 输出排序顺序

猜你喜欢

转载自blog.csdn.net/Abel_Liujinquan/article/details/89180533
今日推荐