select * from table1 where id in (select id from table2),

2024年11月22日 20:49
有5个网友回答
网友(1):

大哥,你的语句都通不过的,我的已经通过了,还说我的不对吗?
你的意思不就是:想找的table1 里的ID既在table2里又在table3里吗??所以你才用AND
而那个你说对的兄弟,用OR ,也算是对了??

你闹啊?

select * from table1 where id in((select id from table2 where id in (select id from table3))

可以这样嵌套着写的,你那样写是错误的,你在分析器里测试下不就知道了

谢谢啊~

网友(2):

明确一点,这样好像不行。
括号中的两个select送入数据库中跟本就没人认出它来。(我里的“人”指SQL服务器)

网友(3):

用and不对,可以用union

select * from table1 where id in (select id from table2 union all select id from table3);

网友(4):

select * from table1 where id in((select id from table2)and (select id from table3))

网友(5):

select * from table1
where id in (select id from table2 )
OR id in( select id from table3);