将列转换为行

时间:2009-07-13 04:11:42

标签: sql database pivot

我在[单一表格]中有这些专栏:

partnumber
bin
description
store 
manufacturer

我需要将商店和制造商输出为每个partnumber,bin,description列的行。

2 个答案:

答案 0 :(得分:1)

也许使用数据透视图或分组?

你的问题很模糊,并没有显示很多表结构,也没有列出你正在使用的RDBMS。

考虑编辑您的代码以包含SQL,您正在使用的数据库服务器?

马特

答案 1 :(得分:0)

如果我对问题的重写大致正确,那么它仍然含糊不清,但是对所需输出的一种可能解释是:

SELECT "store" AS tag, store        AS name, partnumber, bin, description
    FROM TheAnonymousTable
UNION
SELECT "maker" AS tag, manufacturer AS name, partnumber, bin, description
    FROM TheAnonymousTable

这将商店作为一行,制造商作为每个部件号,箱和描述组合的行。默认情况下,UNION可以消除重复。这不是旋转的一个例子。

这可能不是必需的 - 但应修改问题以确保:

  1. 该表有一个名称。
  2. 更清楚地解释了所需的输出。
  3. 理想情况下,问题包括一些示例输入数据(对于表格)和样本输出结果。