gpt4 book ai didi

MySQL 查询要过滤的多列?

转载 作者:太空宇宙 更新时间:2023-11-03 12:29:25 25 4
gpt4 key购买 nike

假设我只有 1 个表,其中包含多个列。比方说:

Fruits
--------------------------------------
id | name | country
--------------------------------------
1 | Banana | china
2 | Orange | japan
3 | Apple | japan
4 | Apple | china
5 | Banana | usa
6 | Orange | china

然后简单查询到SELECT所有水果id < 6 .
它是:

SELECT * FROM fruits WHERE id < 6

然后它将返回:

--------------------------------------
id | name | country
--------------------------------------
1 | Banana | china
2 | Orange | japan
3 | Apple | japan
4 | Apple | china
5 | Banana | usa

然后通过附加上面的查询,我怎样才能继续排除更多的东西。
例如:

Do NOT want to see, any "APPLE" from "CHINA".

所以最后的结果一定是:

--------------------------------------
id | name | country
--------------------------------------
1 | Banana | china
2 | Orange | japan
3 | Apple | japan
5 | Banana | usa

这又是withoutif, name='Apple' AND country='china'的行一起!

  • 因此,继续第一个查询,我如何添加附加的“AND 条件对”以获得此结果?

我会说:

SELECT * FROM fruits WHERE id < 6 ... AND DON'T RETURN this condition where name='Apple' and country='china' TOGETHER

最佳答案

尝试:

SELECT * 
FROM fruits
WHERE (id < 6)
AND NOT (name = 'Apple' AND country = 'china')

或者:

SELECT * 
FROM fruits
WHERE (id < 6)
AND id NOT IN (SELECT id
FROM fruits
WHERE name = 'Apple'
AND country = 'china')

关于MySQL 查询要过滤的多列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16145508/

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