gpt4 book ai didi

mysql - 编写 SQL 查询,选择同时在三列中具有指定值的行以外的所有行

转载 作者:行者123 更新时间:2023-12-04 07:45:37 27 4
gpt4 key购买 nike

我在表中有 3 列——GroupingKey、GroupingValue 和 GroupingType,如下所示:

CREATE TABLE Grouping
(`GroupingKey` varchar(8), `GroupingValue` varchar(7), `GroupingType` varchar(8));

INSERT INTO Grouping
(`GroupingKey`, `GroupingValue`, `GroupingType`)
VALUES
('Language', 'Italian', 'Category'),
('Language', 'Russian', 'Unknown'),
('Unknown', 'Unknown', 'Unknown'),
('Phone', 'Unknown', 'Unknown');
除了分别在 GroupingKey、GroupingValue 和 GroupingType 中具有 Unknown、Unknown、Unknown 的行之外,选择上表中所有行的 SQL 查询是什么?
我的 SQL 查询的预期输出是:


分组键
分组值
分组类型



意大利语
类别


俄语
未知

电话
未知
未知


我尝试按如下方式编写查询:
SELECT DISTINCT groupingkey,
groupingvalue,
groupingtype
FROM mytablename
WHERE groupingkey NOT LIKE 'Unknown'
AND groupingvalue NOT LIKE 'Unknown'
AND groupingtype NOT LIKE 'Unknown'
但最终发生的是,即使在上面指定的 3 列中的 1 列中,它也不会选择任何具有“未知”的行

最佳答案

你可以这样写条件:

WHERE NOT (
groupingkey = 'Unknown'
AND groupingvalue = 'Unknown'
AND groupingtype = 'Unknown'
)
请注意,根据您的要求,您应该使用 =而不是 LIKE .
或者:
WHERE groupingkey <> 'Unknown'
OR groupingvalue <> 'Unknown'
OR groupingtype <> 'Unknown'
这意味着至少有 1 列不能是 'Unknown' .
或者:
WHERE (groupingkey, groupingvalue, groupingtype) <> ('Unknown', 'Unknown', 'Unknown')
demo .

关于mysql - 编写 SQL 查询,选择同时在三列中具有指定值的行以外的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67207444/

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