我有一个看起来像
的查询SELECT * FROM mytable mt
WHERE 1=1
AND mt.column_1 IN (SELECT id FROM employee WHERE salary >10000)
OR mt.column_2 IN (SELECT id FROM employee WHERE salary >10000)
我知道上面的查询看起来并不好看,即使它完成了我的工作。我做谷歌但无法找到帮助。我问的原因是'员工的实际情况。 table是临时表,它在strored_procedure的上层填充数据,这个特定是我对该过程的最终select语句。
答案 0 :(得分:2)
我认为一个简单的JOIN
可以解决这个问题
SELECT mt.*
FROM mytable mt
JOIN (SELECT id FROM employee WHERE salary >10000) B
on mt.column_1=B.ID or mt.column_2=B.ID