父表
Column1
S1
S2
S3
表 child
Column1 Column2
S1 P1
S1 P2
S2 P1
S2 P2
S3 P1
其中 parent.column1 = child.column1
鉴于上述表格,我需要确定其 child 在 column2 中与 parent S1 具有相同记录的 parent 。
例如,S1 和 S2 都有 P1 和 P2,因此满足条件。然而,S3 没有 P2,因此应该被排除在外。
SQL 的新手,所以我遇到了一些麻烦。通过使用 not in 语句进行了尝试,但由于 S3 具有 P1,因此并未将其排除在外。
最佳答案
你需要加入。这将因 SQL 方言而异。就像是:
select child.column1, child.column2 from (
select column2 as parentsColumn2Value from child where column1='S1'
) as parentsColumn2Table
left join child on parentsColumn2Table.column2=child.column2
关于SQL - 识别多条记录的精确匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/880217/