gpt4 book ai didi

sql - 你怎么能让一列等于列表中的所有项目?

转载 作者:行者123 更新时间:2023-12-04 16:45:59 25 4
gpt4 key购买 nike

我有两张 table ,PC 和 SC。在 SC 中,我有一个包含 3 种颜色(红色、蓝色、绿色)的列表。在 PC 中,我有 2 列名称和颜色,如下所示:

Name      Color
Tom Red
Tom Blue
Tom Green
Mike Red
Mike Blue
James Green
Joe Red
Joe Blue
Joe Green
James Brown

我需要返回来自 PC 的名称,其中 Color 列包含来自 SC 的所有颜色。如何做到这一点?

这是我正在尝试的,但它不起作用。

SELECT DISTINCT PC.Name
FROM PC
INNER JOIN SC ON PC.ColorCode = SC.ColorCode
WHERE PC.ColorCode IN (SELECT ColorCode FROM SC);

请帮忙。

最佳答案

您需要使用 HAVING用于过滤组的子句

select name from pc 
group by Name
having count(distinct color) = (SELECT count(distinct color) FROM SC)

关于sql - 你怎么能让一列等于列表中的所有项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33840072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com