【发布时间】:2011-05-08 16:16:26
【问题描述】:
我有一个只返回一条记录的 SQL 存储过程。但是,在该过程中,是一个子查询,可以返回多于一行。我相信最好将子查询设计为返回一行多列,而不是多行。
我将如何写出子查询以便它返回列。
目前查询的是:
SET @Pkg_Status = (Select lf.name, edi.Date from EdiPackage edi, Labelfeed lf
Where edi.orderID = @OrderID
AND edi.code = lf.code
AND lf.labelID = 'EDIStage')
来自上述查询的示例结果集将是:
第 1 栏 第 2 栏 字段 1.值 1 字段 2.值 1 字段 1.值 2 字段 2.值 2 字段 1.值 3 字段 2.值 3相反,我希望结果是:
第 1 栏 |第 2 列 |第 3 列 |第 4 栏 |第 5 栏 |第 6 栏 字段1.值1 |字段2.值1 |字段1.值2 |字段2.值2 |字段1.值3 |字段2.值3如何做到这一点?
【问题讨论】:
-
我不确定我们是否理解这个问题。您能向我们展示一些示例数据和所需的输出吗?
-
查看 SQL Server 2000 中的旋转表。搜索 stackoverflow...我回答了类似的问题
标签: sql-server tsql sql-server-2000