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

请问SQL语句

2012-02-02 
请教SQL语句我现在取出两个结果集D1D2ID NameIDCode1A11D11A11D21A11D31A12D11A12D22A22D33A33D14A44D14A4

请教SQL语句
我现在取出两个结果集
D1 D2
ID Name ID Code
1 A1 1 D1
1 A1 1 D2
1 A1 1 D3
1 A1 2 D1
1 A1 2 D2
2 A2 2 D3
3 A3 3 D1
4 A4 4 D1
4 A4 4 D2
4 A4 4 D3
  4 D4

如何能得到以下的结果
ID Name Code
1 A1 D1 
1 A1 D2
1 A1 D3
1 A1 D3
1 A1 D3
2 A2 D1
2 A2 D2
2 A2 D3
3 A3 D1
4 A4 D1
4 A4 D2
4 A4 D3
4 A4 D4

请各位高手帮忙写个SQL语句。

[解决办法]
用连接,
select D1.id,D1.Name ,D2.Code frome D1 where D1.ID=D2.ID
[解决办法]
select id=identity(int,1,1),a.id,a.name into #a1 from D1 a
select id=identity(int,1,1),b.id,b.name into #a2 from D2 b
select #a1.*,#a2.* from #a1,#a2
where a.id=b.id
drop table #a1,#a2
如果后面的id不行可以把表里的id字段改个名字就没问题了
[解决办法]
select d2.id,name,code from 
(select distinct id ,name from d1 ) as d
inner join d2 
on d.id=d2.id

热点排行