标题:请问,如果其中一个是数据表,能否通过查询得到另一种形式的数据集?谢谢!
只看楼主
mansohu
Rank: 1
等 级:新手上路
帖 子:190
专家分:0
注 册:2013-3-20
结帖率:21.05%
已结贴  问题点数:10 回复次数:2 
请问,如果其中一个是数据表,能否通过查询得到另一种形式的数据集?谢谢!
请问,如果其中一个是数据表,能否通过查询得到另一种形式的数据集?谢谢!

搜索更多相关主题的帖子: 数据表 
2015-09-26 16:55
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:5 
应该可以的,一步做不到还可以分步实现。

活到老,学到老! http://www. E-mail:hu-jj@
2015-09-29 07:58
mxbing1984
Rank: 7Rank: 7Rank: 7
来 自:贵州道真
等 级:贵宾
威 望:37
帖 子:73
专家分:342
注 册:2014-8-8
得分:5 
Create Table T
(
类别 Varchar(10),
商品 Varchar(10),
指标 Varchar(10),
指标值 Varchar(10)
)

insert into T values('蔬菜','胡萝卜','产地','河北')
insert into T values('蔬菜','胡萝卜','价格','1')
insert into T values('蔬菜','胡萝卜','保质期','10天')
insert into T values('蔬菜','胡萝卜','清洗','True')
insert into T values('蔬菜','黄瓜','产地','天津')
insert into T values('蔬菜','黄瓜','价格','1.5')
insert into T values('蔬菜','黄瓜','保质期','7天')
insert into T values('蔬菜','黄瓜','有机','True')

select * from T
pivot
(
    max(指标值)
    For
    指标 in(产地,价格,保质期,清洗,有机)
)p


--如果指标项目不固定就采用动态拼接的sql
Declare @W Varchar(7000)=''
Declare @sql Varchar(8000)=''
Select @W=@W+','+指标 From (
Select distinct 指标 From T
) S

Set @sql='
select * from T
pivot
(
    max(指标值)
    For
    指标 in('+STUFF(@W,1,1,'')+')
)p'
Exec (@sql)


天再高,踮起脚尖就能更接近阳光
2015-09-29 08:35



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




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

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