当前位置:  开发笔记 > 数据库 > 正文

如何从行中选择数据并使用存储过程将其显示为列?

如何解决《如何从行中选择数据并使用存储过程将其显示为列?》经验,为你挑选了1个好方法。

我有一个包含数据的表格如下:

Cars:
id | name
----------
1  | Buick
2  | Honda
3  | Toyota

我想在存储过程中做的是获得这样的结果:

Temp Table:
Buick | Honda | Toyota
----------------------

我意识到它没有价值,但我只想先把这一部分搞定.

我猜这会涉及某种临时表.

使用MS SQL 2005.



1> Chris Shaffe..:

你在找Pivot吗?

这是基于为您的示例修改的MSDN示例的(略微设计的)示例:

SELECT 'Count' AS Header,
    [Toyota], [Buick], [Honda]
FROM (SELECT id, Name FROM Cars) AS SourceTable
    PIVOT( COUNT(ID) FOR Name IN ([Toyota], [Buick], [Honda])) AS PivotTable

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有