汇总和分组数据

2016-11-16  本文已影响0人  olivia_ong

汇总数据

利用聚集函数(aggregate function)对表中信息进行汇总。

聚集函数

select sum(quantity*item_price) as items_ordered 
from orderitems
 where order_num=20005;

利用算术操作符,所有的聚集函数都可以用来执行多个列上的计算。

分组数据

利用group by子句和having子句对不同类别的数据进行分组汇总。

创建分组

利用group by子句创建分组

select vend_id,count(*) as num_prods
from products
group by vend_id;//不同vend_id包含的产品数目

使用group by子句的规定:

select vend_id,count(*) as num_prods
from products
group by vend_id with rollup;

过滤分组

利用having子句替代where对分组进行过滤。

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

where与having相结合

select vend_id,count(*) as num_prods
from products
where prod_price>=10
group by vend_id having count(*)>=2;//具有两个及以上的价格为10及以上产品的供应商
上一篇下一篇

猜你喜欢

热点阅读