如何使用多列查询多个条件,例如AND子句和子句。
示例数据
| Name | Country | ZipCode |
| -------- | -------------- | -------------- |
| A | Italy | 2020 |
| B | Japan | 1010 |
| C | Canada | 3030 |
| D | Japan | 1011 |
| E | Japan | 1012 |我需要的结果是没有..。
| Name | Country | ZipCode |
| -------- | -------------- | -------------- |
| A | Italy | 2020 |
| D | Japan | 1011 |
| E | Japan | 1012 |我试图编写如下SQL:
SELECT * FROM table
WHERE ((Country <> 'Japan' AND ZipCode <> '1010') AND
(Country <> 'Canada' AND ZipCode <> '3030'))但这不对。有什么帮助吗?
发布于 2021-05-03 15:11:43
只需使用not
where not (country = 'Japan' and ZipCode = '1010' or
Country = 'Canada' and ZipCode = '3030'
)当然,您可以将其扩展出去:
where (country <> 'Japan' or ZipCode <> '1010') and
(country <> 'Canada' or Zipcode <> '3030')注意:此构造还将筛选出NULL值。您的示例数据中没有任何数据,如果有必要,可以对它们进行调整以处理它们。
https://stackoverflow.com/questions/67371345
复制相似问题