sql - SQL:使用 OR 进行 Equi 连接
问题描述
我试图弄清楚如何使用多个 OR 标准进行 equi join,但似乎无法弄清楚。以下是我目前正在使用的内容。我希望找到两个 p_number 首先匹配的所有记录,然后返回 g_id 等于 p_number 的情况,以获取 p_number 不匹配的实例。有任何想法吗?提前致谢!
FROM T1, T2
WHERE ( T1.p_number = T2.p_number OR T1.g_id = T2.p_number)
解决方案
试试看:
SELECT * FROM T1 JOIN T2 ON T1.p_number = T2.p_number WHERE ((T1.p_number = T2.p_number) OR ((T1.p_number != T2.p_number) AND (T1.g_id = T2.p_number)))
推荐阅读
- python - 如何在时间为相对周而不是时间戳的情况下应用滚动功能并应用分组
- jquery - 在 jsGrid itemTemplete 函数返回的内容上添加引导工具提示
- webpack - 使用 Styled JSX 的自定义媒体查询 - Next v. 9.0.6
- java - 如何使用spring正确发布DDD域事件?
- r - 如何在 for 循环中声明全局变量,为什么 else 语句读作意外?
- bash - 如何正确编写可以利用 bash 的自动完成机制的交互式 shell 程序
- java - 如何在多维数组中找到最大的 10 个元素?
- python - 如何使用 StringIO 和 put_object 方法将 url 上传到 s3 存储桶和 boto3
- office-js - 如何在 Office.onReady() 中访问 Excel.RequestContext?
- excel - Spark(Scala)解析时间戳格式为(“dd-MMM-yy hh:mm:ss:SSSSSSSSS aa”)的字段的问题