sql-server - 如何将Sql列转换为行?

标签 sql-server sql-server-2005

我有一个非常简单的问题,需要在SQL Server 2005中提供非常快速和简单的解决方案。

我有一个带有x列的表。我希望能够从表中选择一行,然后将列转换为行。

TableA
Column1, Column2, Column3


SQL语句无法使用

ResultA
Value of Column1
Value of Column2
Value of Column3




@Kevin:我在这个主题上进行过Google搜索,但是在很多示例中,示例过于复杂,您能否进一步提供帮助?

@Mario:我正在创建的解决方案有10列,存储的值是0到6,我必须计算出多少列的值是3或更大。因此,我考虑过创建一个查询以将其转换为行,然后在子查询中使用生成的表来计算Column> = 3的行数

最佳答案

您应该看一下UNPIVOT子句。

Update1:​​GateKiller,奇怪的是,今天早上我读了一篇关于它的文章(关于一些无关的东西),我试图在我再次看到它的地方慢跑,也有一些不错的例子。我敢肯定,它将回到我身边。

Update2:找到它:http://weblogs.sqlteam.com/jeffs/archive/2008/04/23/unpivot.aspx

关于sql-server - 如何将Sql列转换为行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3470/

相关文章:

html - TD HTML 标签右对齐

sql-server - SQL Server 是否有通用的 oData 提供程序?

sql-server - 无法确定至少一个变体参数的参数类型

c# - 恢复数据库时表单无响应

sql-server-2005 - SQL Server 客户端协议(protocol)

sql-server - 将 1 对 n XML 列转换为表格数据

mysql - 合并两个选择查询并在顶部显示第一个查询记录

sql - 调用远程标量值函数时出错

sql-server - 数百个数据库 SQL Server 日志传送

sql-server - 表和存储过程的大规模重命名