MYSQL:分组数据

Products数据总览:
在这里插入图片描述
数据分组需要用到GROUP BY和HAVING两个子句。
如果返回一个供应商DLL01提供的产品数目,代码是这样写的

SELECT COUNT(*) AS num_prods
FROM products
WHERE vend_id = 'DLL01';

在这里插入图片描述
如果要返回每个供应商提供的产品数目,代码如下

SELECT vend_id, COUNT(*) AS num_prods
FROM products
GROUP BY vend_id;

在这里插入图片描述
如果是需要返回提供产品数目大于等于3的供应商,就需要在GROUP BY 后面加上 HAVING 子句。代码如下

SELECT vend_id, COUNT(*) AS num_prods
FROM products
GROUP BY vend_id
HAVING COUNT(*) >=3;

在这里插入图片描述
如果是返回具有3个以上(价格大于等于4的产品)的供应商,代码如下

SELECT vend_id, COUNT(*) AS num_prods
FROM products
WHERE prod_price >= 4
GROUP BY vend_id
HAVING COUNT(*) >=3;

在这里插入图片描述

发布了19 篇原创文章 · 获赞 0 · 访问量 325

猜你喜欢

转载自blog.csdn.net/the_name_of_science/article/details/105381522