sql常见问题(50分)

  • 主题发起人 主题发起人 wutaoqing
  • 开始时间 开始时间
W

wutaoqing

Unregistered / Unconfirmed
GUEST, unregistred user!
如表Table1 结构为 :Table1包含一个字段(name)
name
a
b
c
d
要求:将Table1数据表  转化成 Table2表
Table2表的结构是:将Table1中的每条记录  变成 Table2中的一个字段:
Table2包含4个字段(a,b,c,d)
结构如下:
a b c d
(也就是说将表中竖结构换成横结构:每条记录变成每个字段)
 
方法有三:
1、使用case when语句
select case when name='a' then name else null end [a],
when name='b' then name else null end ,
when name='c' then name else null end [c],
when name='d' then name else null end [d]
from table1
如果要合并,何以外加一层sum或其他的聚集函数处理;
2、在存储过程中使用游标,将记录一条一条读出来,重新组织结果集;
3、如果是特殊的数据库可以有特殊的方法,比如access的交叉表。
 
后退
顶部