关于SQL数据库中不同表格的查询问题

在table1,有name,region;table2中,有name,age;要查询age=18的人的地区;意思是先在table2中查找age=18的,再在table1中查找region(此时的name是根据table2中age=18的结果)。请带详细说明,谢谢!数据库菜鸟。。。

第1个回答  2013-11-18
selet region from table1
where name in
(select name from table2 where age=18)

括号里那句就是查age=18的name,然后外边嵌套了一层,就是查找跟table2里查出的name相同的table1里的region

第2个回答  2013-11-18

    表连接查询select a.name,a.region from table1 a left join table2 b on a.name=b.name where b.age=18;

    子查询select name,region from table1 where name in (select name from table2 where age=18);

第3个回答  2013-11-18
select region from table1 join talbe2 on table1.name = table2.name where table2.age=18追问

select region from table2 where name is in (select name from table1 where age=18)这个不可以吗?

追答

不可以 table2中美有region这个列

追问

select region from table1 where name is in (select name from table2 where age=18) 我刚刚打错了,应该这样子,我只是想考究where name is in这个字段对不对啊~

追答

如果是在T-SQL的话
select region from table1 where name is in (select name from table2 where age=18)
改成
select region from table1 where name in (select name from table2 where age=18)

本回答被提问者采纳
相似回答
大家正在搜