一个多表关联查询的麻烦问题~~谢谢
相关表:
tb_shenpi:
表单编号(其他字段省略)
DBD20070111001
LLD20070111001
BFD20070111001
......
tb_BianMa:
ID TabNam
DBD tb_DiaoBoDan
LLD tb_LianLuoDan
BFD tb_BaoFeiDan
......
具体表:
tb_DiaoBoDan:
表单编号 状态
DBD20070111001 已通过
......
tb_LianLuoDan
表单编号 状态
LLD20070111001 在审
......
tb_BaoFeiDan
表单编号 状态
BFD20070111001 未通过
......
期望结果:
表单编号 状态
DBD20070111001 已通过
LLD20070111001 在审
BFD20070111001 未通过
不只这三种会有很多种单据形式!!!!!!
------解决方案--------------------select b.* from tb_shenpi a,tb_DiaoBoDan b
union all
select b.* from tb_shenpi a,tb_LianLuoDan b
union all
select b.* from tb_shenpi a,tb_BaoFeiDan b
------解决方案--------------------楼上正确,不需要第二个表.
------解决方案--------------------declare @sql varchar(8000)
set @sql= ' '
select @sql=@sql+ ' select 表单编号,状态 from '+TabNam+ ' union all '
from tb_BianMa
set @sql=left(@sql,len(@sql)-len( ' union all '))
exec(@sql)