当前位置: 代码迷 >> Informix >> 多表连接查询的老有关问题
  详细解决方案

多表连接查询的老有关问题

热度:4079   发布时间:2013-02-26 00:00:00.0
多表连接查询的老问题!
有四个表,表t1(id,name,yuwen)
  表t2(id,name,shuxue)
  表t3(id,name,yingyu)
  表t4(id,name,lishi)
每个表本身的id和name是唯一的,每个表的记录数是不一定相等的(即同一个id在t1中存在,但在其他表中可能存在,也可能不存在)!
现在要求查询出这样的结果(id,name,yuwen,shuxue,yingyu,lishi),其中id为四个表中所有的id。

请大侠帮忙,谢谢!

------解决方案--------------------------------------------------------
方法一;
SQL code
select a.id,a.name,t1.yuwen,t2.shuxue,t3.yingyu,t4.lishifrom ((((select distinct id,name from     (select id from t1 union all    select id from t2 union all    select id from t3 union all    select id from t4 ) t) a left join t1 on a.id=t1.id)left join t2 on a.id=t2.id)left join t3 on a.id=t3.id)left join t4 on a.id=t4.id;
  相关解决方案