日期:2014-05-18  浏览次数:20538 次

怎么能写能得出这样的结果
有一个表有两个字段,姓名ID,姓名
另一个表有,姓名ID,屋子ID,地址
如1     张三
    2     李西
    3     佬  
    另一表数据
    1       1       南昌大学
    1       2       上海路口
    1       3         北京西路
    2       1         上海路口
最后求的结果是
列名
  ID   姓名         地址1           地址2         地址3
  1     张三         南昌大学   上海路口     北京西路
  2     李西         上海路口     NUll             NULL
  3     佬             NUll             NULL             NUll      


------解决方案--------------------
select id=identity(int,1,1),
姓名,
地址1=(select 地址 from 表2 b where a.姓名ID=b.姓名ID and b.屋子ID=1),
地址2=(select 地址 from 表2 c where a.姓名ID=c.姓名ID and c.屋子ID=2),
地址3=(select 地址 from 表2 d where a.姓名ID=d.姓名ID and d.屋子ID=3)
into #t
from 表1 a

select * from #t