=====请教:关于行转列的效率问题=====

maverickliu 2004-03-04 02:09:36
采用论坛上常用的方法,就是用
sum(case 列1 when 'w1' then 列2 else 0 end) as 新列1
.....
实现了行转列,但有个问题就是一旦数据量比较大的情况下,速度会很慢,大概几十秒。

请问这种方法是最高效的办法么?还有没有别的方法。
谢谢!
...全文
86 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ale 2004-03-16
使用group较多的时候可以试着加索引,把你的group by中所有列,select的所有列添加到同一个索引中,效率能大大提高,这个在sybase里面好像叫覆盖索引。只要Table Scan的情况改变之后你就能清楚地感到速度的变化。
回复
nononono 2004-03-16
最好的办法是使用OLAP工具提供展示。呵呵
回复
smalldelube 2004-03-16
赞成zjcxc(邹建) ( "行列转换最适合的处理是在前台处理,而不是后台.")
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2004-03-04 02:09
社区公告
暂无公告