join多张表(包含判断)

1 select tm.*,tmt.MTType,tp.PollingName ,tam.AcqModelType,tb.BRType,tp.PollingName, ta.AcquisitionName ,ta.AcquisitionId,ta.AcquisitionAddr,tt.terminalid,tt.TerminalName,tt.commuaddr  
2 from tb_meter tm join tb_Acquisition ta join tb_Terminal tt 
3 on tt.TerminalId=ta.TerminalId   
4 on ta.AcquisitionId=tm.AcquisitionId
5 left join dbo.tb_MeterType tmt on tmt.MTId=tm.MeterType 
6 left join dbo.tb_BaudRate tb on tb.BRId=tm.BaudRate
7 left join dbo.tb_Polling tp on tp.PollingId= case when tm.Polling>7 then 7 else tm.Polling end
8 left join dbo.tb_AcqModel tam on tam.AcqModelId=tm.Model 

蓝色部分是重点,当id>=7的时候,显示id为7的字段。

posted @ 2012-12-28 15:51  Ole_Yao  阅读(227)  评论(0编辑  收藏  举报