我在一个表上有多个内部联接,我想从where子句中的第二个表列传递所有值。
e.g。
select * from Table A
inner join Table B on A.id = B.id
inner join Table C on A.id = C.id
Where C.somevalue = (all values from this column)
如何在where
子句中实现此行为。
答案 0 :(得分:2)
您可以将IN
子句与WHERE
结合使用来制作如下内容:
WHERE C.somevalue IN (SELECT col FROM table)
答案 1 :(得分:1)
使用IN
select *
from Table A
inner join Table B on A.id = B.id
inner join Table C on A.id = C.id
Where C.somevalue IN (SELECT your_column FROM your_table)
答案 2 :(得分:0)
如果列来自表B,您可以将条件保留在join子句
中select *
from Table A
inner join Table B on A.id = B.id
inner join Table C on A.id = C.id
and C.somevalue = B.column_you_prefer