日期:2014-05-18  浏览次数:20452 次

请教sql语句,这表中读出的数据作为下个表中查询的条件
有俩个表a,b,从a中读出数据,作为b中的查询条件,应该怎么写,我是这么写的,不过这样写太笨了。我俩个表之间建立联系了(就是喝表b中的carid这一列建立的联系),从表a中
select ID from [car] where DepartmentID = 1
我把读出的内容存到数组aa[]中,然后在表b中,读出字段名名为carid这一列中值为数组aa[]中有的值的行的数据。
一次是不是应该就能读出表b中的数据,不用像我这样分2次,这个语句该怎么写?谢谢解答

------解决方案--------------------
可以用子查询实现吧。比如说:select * from tablea a where not exists (select 1 from tblb b where a.col=b.col)
------解决方案--------------------
SQL code
select b.* from car as a inner join b on a.id=b.carid where   DepartmentID = 1

------解决方案--------------------
使用两个表进行连接查询即可
------解决方案--------------------
子查询:
select * from b where carid in (select ID from a where DepartmentID = 1))
联接查询:
select b.* from b inner join a on b.carid=a.ID and a.DepartmentID=1

------解决方案--------------------
用子查询
------解决方案--------------------
子查询:
select * from b where carid in (select ID from a where DepartmentID = 1))
联接查询:
select b.* from b inner join a on b.carid=a.ID and a.DepartmentID=1