标题:SQL 2005 中的PIVOT问题
取消只看楼主
yiyaozjk
Rank: 2
等 级:论坛游民
帖 子:231
专家分:30
注 册:2010-3-10
结帖率:51.67%
已结贴  问题点数:20 回复次数:3 
SQL 2005 中的PIVOT问题
表WEEK_INCOME(WEEK VARCHAR(10),INCOME DECIMAL)

SELECT [星期一],[星期二],[星期三],[星期四],[星期五],[星期六],[星期日]
FROM WEEK_INCOME
PIVOT
( SUM(INCOME) for [week] in([星期一],[星期二],[星期三],[星期四],[星期五],[星期六],[星期日])
)TBL
用以上正确 ,但我想拓展,假如,假设week列 是一个我不知道到底多少个值的列,怎么办?我用下在语句去替代,
select WEEK as '姓名'  from WEEK_INCOME
pivot(sum(INCOME) for week in ( select [week] from WEEK_INCOME)) as TBL

错误:消息 156,级别 15,状态 1,第 2 行
关键字 'select' 附近有语法错误。
消息 102,级别 15,状态 1,第 2 行
')' 附近有语法错误。

SQL 2005 中如何解决上述问题
搜索更多相关主题的帖子: 拓展 姓名 
2014-03-24 20:19
yiyaozjk
Rank: 2
等 级:论坛游民
帖 子:231
专家分:30
注 册:2010-3-10
得分:0 
can you help me?
2014-03-25 09:36
yiyaozjk
Rank: 2
等 级:论坛游民
帖 子:231
专家分:30
注 册:2010-3-10
得分:0 
以下是引用owenlu1981在2014-3-25 10:47:21的发言:

试试这个
TRANSFORM Sum() Select [姓名] from WEEK_INCOME Group By [姓名] Order by [姓名] Pivot [Week]
   版主,不行、、提示:关键字 'pivot' 附近有语法错误。
2014-03-25 16:17
yiyaozjk
Rank: 2
等 级:论坛游民
帖 子:231
专家分:30
注 册:2010-3-10
得分:0 
回复 5楼 owenlu1981
数据库转成EXCEL发上来看看

不是转成EXCEL, 我是想让它直接在SQL进行查询的分列转成行的 。。。所以我怎么传数据
2014-03-29 17:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-429100-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.315697 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved