首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

多表联合查询,该怎么处理

2013-01-11 
多表联合查询表aidcjtxmsxrq1车间1pp1552012-1-32车间2pp1552012-3-63车间3pp1552012-5-9 (cj为车间,txm为

多表联合查询
表a
id     cj       txm       sxrq
1    车间1     pp155      2012-1-3
2    车间2     pp155      2012-3-6
3    车间3     pp155      2012-5-9
 (cj为车间,txm为条形码,sxrq为送修日期字段)
表b
id     lb        txm      wxrq
1     喇叭坏    pp155     2012-2-9
2     主机坏    pp155     2012-3-20
(lb为维修类别,wxrq为维修日期字段)
表c
txm       xh
pp155    惠普
pp190    东芝
(xh为型号字段)
表a为送修表,表b为维修表,表c为基础信息表
想通过查询得到
cj        sxrq      lb          wxrq        xh    txm
车间1   2012-1-3   喇叭坏      2012-2-9    惠普   pp155
车间2   2012-3-6   主机坏      2012-3-20   惠普   pp155
车间3   2012-5-9                           惠普   pp155


(想实现:车间3的那个由于还没有维修,所以想只显示送修信息,维修信息不显示,但型号基本信息显示)
要用的左联接吗?
select a.cj,c.xh,b.lb 
from a left outer join b on a.txm=b.txm 
left outer join c on b.txm=c.txm

新手,不大会用哈,请高手指点下,我用的是ACCESS数据库
[解决办法]

select a.cj,a.sxrq,b.lb,b.wxrq,c.xh,a.txm
from (a left join b on a.txm=b.txm and a.sxrq=b.sxrq)
inner join c on a.txm=c.txm
order by a.sxrq

热点排行