我希望将多个列的组合与另一个表或同一个表本身的组合匹配。
例如,见表1和表2。
所以,我希望输出如下。
到目前为止,我一直在使用 AND
实现这一目标的条款如下:
select * from table1
where col1 in (select col4 from table2)
and col2 in (select col5 from table2)
and col3 in (select col6 from table2)
但它没有给我确切的输出。所以,我正在寻找这样一个查询,它可以为我的场景工作任何帮助都将不胜感激
2条答案
按热度按时间kd3sttzy1#
我找到了我自己问题的答案,下面给出了同样的sql查询。
不过,如果有人有更好的解决方案,我们会很感激的。
pdtvr36n2#
你需要的是
INTERSECT
用于返回这些列的多个(两个或更多)select语句的结果的set运算符的值对于相应的列顺序应该相等。因此,请考虑使用以下方法:
演示