sql - SQL - 按两个匹配的列和一个不同的列过滤
问题描述
下面我创建了一个示例表来反映我面临的问题。我试图弄清楚如何收集包含两条匹配数据和一条不同的数据。在这种情况下,我只想找到具有匹配日期和匹配组号的信息,同时具有不同的语言选项。如果日期匹配但组不匹配,则应将它们排除在结果之外,并且如果所有三个(组、日期、语言)都匹配,则可以这样说。
示例表: 姓名 | 集团 | 日期 | 语言 安妮 3 1/1/21 zh 约翰 3 2/4/21 zh 凯尔 2 1/1/21 es 杰克 3 21 年 3 月 8 日 斯泰西 1 5/9/21 FR 迈克 2 3/3/21 FR 保罗 2 1/1/21 FR 布赖恩 1 5/9/21 zh 马克 3 1/1/21 zh 期望的输出: 姓名 | 集团 | 日期 | 语言 凯尔 2 1/1/21 es 保罗 2 1/1/21 FR 斯泰西 1 5/9/21 FR 布赖恩 1 5/9/21 zh
解决方案
我认为这个查询可以做到
SELECT NAME, GROUP, DATE, LANGUAGE
FROM Table t1
WHERE EXISTS (SELECT 1 FROM Table t2
WHERE t1.DATE = t2.DATE
AND t1.GROUP = t2.GROUP
AND t1.LANGUAGE != t2.LANGUAGE)
推荐阅读
- angular - Angular4+ ReactiveForms 禁用和启用控件
- c++ - 在 C++20 中是否不再允许在 std 中为程序定义类型专门化函数模板?
- jenkins - 我们如何使用 ibmcloud 在 jenkins 中创建 bluemix 的 cloudant 服务?ibmcloud 插件可用于 jenkins
- python - 将 JSON 请求一一传递给 REST API
- django - Django - tmp 中没有文件写入 - 语法无效(connections.py,第 36 行)
- python-3.6 - 从 Gene NCBI 检索内含子剪接
- agile - 谁对敏捷开发任务进行评估?
- powershell - Powershell:FileSystemWatcher 过滤器选项 - 不工作。
- mariadb - 如何使用一个主 mariadb 服务器、3 个从 mariadb 服务器配置 maxscale?
- ide - 和朱莉一起编程?