crosstab的问题

istring 2006-05-12 08:34:47
生成crosstab是,如果字段数量不固定,而是从其他语句里select出来的,该怎么解决那?
...全文
145 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Apq001 2006-07-20
  • 打赏
  • 举报
回复
Mark
liangpei2008 2006-05-13
  • 打赏
  • 举报
回复
借用WangZWang(阿来)代码:
Declare @sql varchar(8000)
set @sql = 'select ltime'
select @sql = @sql + ',sum(case point when '''+point+''' then lcount else ''''end) ['+point+']'
from (select distinct point from tab_1) as a

select @sql = @sql+' from tab_1 group by ltime '
--exec(@sql)
Print @sql

就可以看到静态方式了,是这个意思吗?
liangpei2008 2006-05-13
  • 打赏
  • 举报
回复
??一般格式??
istring 2006-05-13
  • 打赏
  • 举报
回复
谁可以把楼上的翻译到一般格式?
liangpei2008 2006-05-13
  • 打赏
  • 举报
回复
同意楼上
WangZWang 2006-05-13
  • 打赏
  • 举报
回复
Declare @sql varchar(8000)
set @sql = 'select ltime'
select @sql = @sql + ',sum(case point when '''+point+''' then lcount else ''''end) ['+point+']'
from (select distinct point from tab_1) as a

select @sql = @sql+' from tab_1 group by ltime '
exec(@sql)
niulity 2006-05-13
  • 打赏
  • 举报
回复
利用分析服务器,建立多维立方体,使用OLAP~~~
istring 2006-05-13
  • 打赏
  • 举报
回复
example:
tab_1
point ltime lcount
-------------------------------
asm1 00 100
asm1 01 400
asm1 02 200
asm2 00 100
asm2 01 400
asm2 02 200
==============================>>
crosstab:tab_2
ltime asm1 asm2
------------------------------
.....
问题是 生成tab_2是,根据具体条件,所显示的字段数量
不固定,有可能有 asm2也有可能有asm3。
怎么解决呢?
ReViSion 2006-05-12
  • 打赏
  • 举报
回复
是呀,楼主你还是先给出数据表结构
和你的要求
liangpei2008 2006-05-12
  • 打赏
  • 举报
回复
有数据结构吗?

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧