sql - 从 SQL 查询中过滤数据
问题描述
在下表中,我需要从表中排除CategoryID=1002
并Gender='KIDS'
记录并返回其他记录。
+------+--------+
| ID | Gender |
+------+--------+
| 1001 | MENS |
| 1002 | MENS |
| 1001 | WOMENS |
| 1002 | WOMENS |
| 1001 | KIDS |
| 1002 | KIDS |
+------+--------+
预期成绩:
+------+--------+
| ID | Gender |
+------+--------+
| 1001 | MENS |
| 1002 | MENS |
| 1001 | WOMENS |
| 1002 | WOMENS |
| 1001 | KIDS |
+------+--------+
解决方案
您可以使用CASE
表达式作为
SELECT *
FROM
(
VALUES
(1001, 'MENS'),
(1002, 'MENS'),
(1001, 'WOMENS'),
(1002, 'WOMENS'),
(1001, 'KIDS'),
(1002, 'KIDS')
) T(Id, Gender)
WHERE CASE WHEN ID = 1002 AND Gender = 'KIDS' THEN 1 ELSE 0 END = 0;
推荐阅读
- python - 绘制来自 .txt 文件的数据的直方图,其中 x 轴上的名称和 y 轴上的数字
- reactjs - 如何使用 slate-react 库开发一个文本编辑器,该库能够在可编辑模式下删除样式化的 HTML 元素(dom 元素)?
- for-loop - Linux - 循环遍历每行上的每个元素
- react-native - 如何使用 react-native-html-to-pdf 控制分页符?
- apache-kafka - Kafka如何处理同一主题中不同类型的记录,包括生产和消费
- log4j2 - 无法使用 Log4j2.properties 添加滚动文件附加程序
- hyperledger-fabric - 频道:测试频道收到发现错误:访问被拒绝
- reactjs - 渲染 2 导航栏
- javascript - 另一个点击事件中的角度点击事件
- python-3.x - AutoViML - 刚开始,出现错误并且无法理解为什么我得到它