SQL语句连接查询问题
其他问答
1
select * from A join B on A.id in (B.sid);
怎么实现连接查询的时候,像where一样用in来做连接两张表的条件
-
如果我没理解错你的问题的话,你这个直接用等于就可以了
select * from A join B on A.id=B.sid
如果你只是想查询A表的数据,那么你可以这样
select * from A where Id in (select sid from B)
或
select * from A where exists (select 1 from B where B.sid=A.Id)
-
这个是您理解的问题,连接是乘法操作,你这里a.sid in (b.sid) 其实就是a.sid=b.sid了,但是您的真实意思有可能不是这个。 是否是想查询 a的id在b中有的记录? 那么就直接 select * from a where a.id in(select id from b) x 这样就可以了。这个主要看您是什么意思
发表回复