如何在特定的 SQL 情况下将 SELECT 与 GROUP BY 和 HAVING 一起使用
How to use SELECT with GROUP BY and HAVING in a specific SQL case
我有一个 SQL 数据库,其中有一个 table:产品(制造商、类型、型号)
每一行都有不同的制造商(品牌)、产品类型(pc、tablet、笔记本电脑等)和型号(1.1 / 2.0 / 3.4.5 等)
问:如何获取只生产一种产品类型和多个型号的制造商
输出: 制造商,类型。
提示:GROUP BY 和 HAVING 语句
我尝试了以下查询,但没有成功,因为它没有在结果 table:
中返回任何值
SELECT
maker, type
FROM
product
GROUP BY maker, type
HAVING count(model)>1 and count(type)=1
我在这个 SELECT 中做错了什么?非常感谢!
你们非常亲密:
SELECT maker, MIN(type) type
FROM product
GROUP BY maker
HAVING COUNT(DISTINCT type) = 1
AND COUNT(DISTINCT model) > 1;
我有一个 SQL 数据库,其中有一个 table:产品(制造商、类型、型号)
每一行都有不同的制造商(品牌)、产品类型(pc、tablet、笔记本电脑等)和型号(1.1 / 2.0 / 3.4.5 等)
问:如何获取只生产一种产品类型和多个型号的制造商
输出: 制造商,类型。
提示:GROUP BY 和 HAVING 语句
我尝试了以下查询,但没有成功,因为它没有在结果 table:
中返回任何值SELECT
maker, type
FROM
product
GROUP BY maker, type
HAVING count(model)>1 and count(type)=1
我在这个 SELECT 中做错了什么?非常感谢!
你们非常亲密:
SELECT maker, MIN(type) type
FROM product
GROUP BY maker
HAVING COUNT(DISTINCT type) = 1
AND COUNT(DISTINCT model) > 1;