您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

SqlServer 动态行转列PIVOT、EXEC,for xml Path

bubuko 2022/1/25 19:32:41 sqlserver 字数 747 阅读 865 来源 http://www.bubuko.com/infolist-5-1.html

1. for xml path 获取动态列 SELECT @pay= STUFF((SELECT DISTINCT pay_name+'],[' FROM t_bd_payment_info for xml path('')),1,1,'') 2. pivot 组装行专列脚本 --步骤2.由于动态产 ...

1. for xml path 获取动态列

    SELECT @pay= STUFF((SELECT DISTINCT pay_name+‘],[‘ FROM t_bd_payment_info for xml path(‘‘)),1,1,‘‘)

 

2. pivot 组装行专列脚本

    --步骤2.由于动态产生的列,脚本不能执行,所以用Exec来执行,把脚本写成一个字符串

    SET @sql=‘select * from (查询脚本) t  PIVOT(SUM(t.pay_amt) FOR t.pay_name IN(‘+@pay+‘)) AS T

 

2. exec 执行

   exec(@sql)

SqlServer 动态行转列PIVOT、EXEC,for xml Path

原文:https://www.cnblogs.com/oxf5deb3/p/13356023.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶