您好,欢迎来到游锐网。
搜索
您的当前位置:首页SQL语句练习实例之十SQLSERVER行转列的性能测试

SQL语句练习实例之十SQLSERVER行转列的性能测试

来源:游锐网


在数据库设计时,有时候为了实现数据规范化的目的,会将属于同一个人的属性记录值改用多条记录的方式来存储,显示时又希望将多个属性数据合并成一行来显示,这就是行转列。 例如:下图的成绩记录表。 一、第一种方式 (SQL 2000以后的版本) --总计120万记录SE

在数据库设计时,美国空间,有时候为了实现数据规范化的目的,虚拟主机,会将属于同一个人的属性记录值改用多条记录的方式来存储,显示时又希望将多个属性数据合并成一行来显示,虚拟主机,这就是行转列。

例如:下图的成绩记录表。

一、第一种方式(SQL 2000以后的版本)

--总计120万记录 SELECT wbook_no , MAX(CASE WHEN [COP_G_NO] ='60174257' THEN AR END) "60174257" , MAX(CASE WHEN [COP_G_NO] ='50165814' THEN AR END) "50165814" , MAX(CASE WHEN [COP_G_NO] ='10221553' THEN AR END) "10221553" FROM ( SELECT [COP_G_NO] , wbook_no , SUM(G_QTY * decl_Price) AR FROM WBK_PDE_LIST WHERE [COP_G_NO] in('60174257','50165814','10221553') GROUP BY [COP_G_NO] , wbook_no ) A GROUP BY wbook_no

Copyright © 2019- yrkf.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务