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

数据字段的替换

2012-04-20 
求助数据字段的替换二个表分别为 X YX结构数据如下ABC135246....Y数据结构如下D E1 语文2 数学3 英文4 化

求助数据字段的替换
二个表分别为 X Y

X结构数据如下

A B C
1 3 5
2 4 6
....

Y数据结构如下
D E
1 语文
2 数学
3 英文
4 化学
5 物理
6 生物
...

要求结果如下 

A B C
语文 英文 物理
数学 化学 生物
....

就是将X中的数字用Y中的中文来替换,谢谢

[解决办法]

探讨
select t1.e A , t2.e B , t3.e C from x
left join y t1 on x.a = t1.d
left join y t2 on x.a = t2.d
left join y t3 on x.a = t3.d

[解决办法]

SQL code
select(select E from Y where D=a.A) as A,(select E from Y where D=a.B) as B,(select E from Y where D=a.C) as Dfrom X as a
[解决办法]
SQL code
create table #A(A VARCHAR(10),B VARCHAR(10),C VARCHAR(10))create table #B(D VARCHAR(10),E VARCHAR(10))INSERT #ASELECT '1','3','5'UNION ALL SELECT '2','4','6'INSERT #BSELECT 1,'语文'union allselect 2,'数学'union allselect 3,'英语'union allselect 4,'化学'union allselect 5,'物理'union allselect 6,'生物'select  b.E A,c.E B,d.E Cfrom #A a  left join #B b on a.A=b.Dleft join  #B c  on a.B=c.Dleft join #B  d  on a.C=d.D
[解决办法]
SQL code
gocreate table X(A int,B int,C int)goinsert Xselect 1, 3 ,5  union allselect 2, 4 ,6 gocreate table Y(D int,E varchar(10))goinsert  Yselect 1 ,'语文'  union allselect 2 ,'数学'  union allselect 3 ,'英文'  union allselect 4 ,'化学'  union allselect 5 ,'物理'  union allselect 6 ,'生物' select b.E A,c.E B,d.E C from X aleft join Y b on a.A=b.Dleft join Y c on a.B=c.Dleft join Y d on a.C=d.D/*A    B    C语文    英文    物理数学    化学    生物*/ 

热点排行
Bad Request.