我有两张桌子。表A包含(其中)两列X1和Y1。表B包含(其中) X2和Y2。
我试图在表A上创建一个SELECT查询,如果X1,Y1匹配表B中的条目X2,Y2,则只返回元素,但我正在努力解决这个问题。
我正在尝试一些类似以下的东西
SELECT * FROM A WHERE CONCAT(X1, X2) IN (SELECT CONCAT(X2, Y2) FROM B)
这似乎是可行的,但我不能怀疑这是否正确。我是否应该在表上使用某种连接?
发布于 2020-04-27 16:02:27
SELECT A.*
FROM A
JOIN B ON (A.X1, A.Y1) = (B.X2, B.Y2)或
SELECT A.*
FROM A
JOIN B ON A.X1 = B.X2
AND A.Y1 = B.Y2如果B(X2, Y2)不是唯一的,则删除重复项所需的额外DISTINCT。
https://stackoverflow.com/questions/61453976
复制相似问题