MySql 分组数据

2017-03-02  本文已影响0人  zshanjun

创建分组

分组是在select语句的group by字句中建立的。

举例:select vend_id, count(*) as num_prods from products group by vend_id;

结果:

\1.PNG\1.PNG

在具体使用group by字句前,需要知道一些重要的规定。

过滤分组

过滤分组使用having

having和where的差别:where在数据分组前进行过滤,having在数据分组后进行过滤。

举例:select vend_id, count(*) as num_prods from products where prod_price >= 10 group by vend_id having count(*) >=2

说明:列出具有2个(含)以上、价格为10(含)以上产品的供应商

\2.PNG\2.PNG

select 字句顺序

一下为select 语句中使用必须遵循的次序:

字句          说明                是否必须使用
select          要返回的列或表达式     是
from           从中检索数据的表      仅在从表选择数据时使用
where          行级过滤            否
group by        分组说明            仅在按组计算聚集是使用
having         组级过滤            否
order by        输出排序顺序         否
limit          要检索的行数         否


参考书籍:

上一篇 下一篇

猜你喜欢

热点阅读