假设我有以下SQL列:
现在,我想做以下事情:
在col_1中,我的值为'one'。如果我检查一下,我在col_2中得到了哪些相应的值,我会找到'两个'和'三个'。结果将是“两个”和“三个”。但是从这个结果集中,我想只有col_1
中使用的那些,在col_2中,具有相应的值'one'。所以:
'两个',在col_1
中, 在col_2
中有'一个',但有三个没有。因此,从{'two','three'}的结果集中只剩下{'two'}。
如何使用MySQL进行这样的双重检查?
提前致谢!
答案 0 :(得分:5)
这是通过JOIN
使用给定条件将表自己完成的。假设您的表名为table
:
SELECT t1.col_1
FROM table t1 JOIN table t2 ON t1.col_2=t2.col_1
WHERE t1.col_1=t2.col_2
AND t1.col_1='one';
这给出了:
col_1
-------
one
(1 row)