ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 行转列 MSSQL2005

行转列 MSSQL2005

原创 Linux操作系统 作者:kirinri 时间:2008-12-02 18:20:27 0 删除 编辑

DECLARE @str varchar(1000)
SET @str = ''
SELECT @str = @str + ' ,SUM( CASE typecode WHEN ''' + typecode + ''' THEN Amount ELSE 0 END ) AS ' + typecode FROM ( SELECT typecode FROM tbl_Person_Change GROUP BY typecode) T
SET @str  = ' SELECT PersonID ' + @str + ' FROM tbl_Person_Change GROUP BY personID'

EXECUTE (@str)
SELECT * FROM tbl_Person_Change

Result :

PID      A       B         C
981   193   114     397
983     61    166       0

PID             TCD           Amount
981             A             152
981             B             114
981             C             143
981             C             254
981             A             41
983             A             13
983             A             48
983             B             110
983             B             56

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12476590/viewspace-504459/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-12-21

  • 博文量
    257
  • 访问量
    503551