当前位置: 首页 > 知识库问答 >
问题:

将行转换为列[重复]

解鸿运
2023-03-14
ID|ColName|ColValue
-------------------
1 |A      |1testa
1 |B      |1testb
1 |C      |1testc
1 |D      |1testd
2 |A      |2testa
2 |D      |2testd
ID| A      | B      | C      | D
1 | 1testa | 1testb | 1testc | 1testd
2 | 2testa | NULL   |   NULL | 2testd

我尝试在T-SQL中使用pivot,但它将聚合函数作为参数,我不想提供。

我怎样才能做到这一点。

共有1个答案

孟俊发
2023-03-14

以下代码:

DECLARE @DataSource TABLE
(
     [ID] TINYINT
    ,[ColName] CHAR(1)
    ,[ColValue] VARCHAR(12)
);

INSERT INTO @DataSource ([ID], [ColName], [ColValue])
VALUES   (1, 'A', '1testa')
        ,(1, 'B', '1testb')
        ,(1, 'C', '1testc')
        ,(1, 'D', '1testd')
        ,(2, 'A', '2testa')
        ,(2, 'D', '2testd');

SELECT *
FROM @DataSource
PIVOT
(
    MAX([ColValue]) FOR [ColName] IN ([A], [B], [C], [D])
) PVT

会给你这个:

请注意,当您使用pivot/unpivot子句时,您需要指定列(在您的示例中为ABCD)。如果您不想进行硬编码,则需要使用以下方法构建动态数据透视:在字符串中构建T-SQL语句,并使用sp_executesql执行它。

 类似资料:
  • 我有以下Python数据帧: 我想:

  • 我是数据科学的初学者,我正在尝试使用Pandas来旋转此数据框架: 所以它变成这样:(标签应该变成列,文件路径变成行。) “标签”列是一组或一类文件路径。我想把它转换成这样一种方式,它适合这个函数:tf。Keras.preprocessing.image.flow_from_dataframe 提前感谢所有帮助我的人。

  • 我有一个这样的数据框, 因为传感器的数量是可变的,所以我决定把它们写成行,比如, 我想知道是否有任何方便的方法将df1转换为df2? 附录:为方便起见,df1代码,

  • 我有以下数据帧: 我想这样。 堆叠/卸载似乎不工作。

  • 我有一张如下的桌子: 如何将其转换为:

  • 问题内容: 考虑下面的示例,其中有一个包含人员记录的 Person 表和一个包含链接到人员的可选属性的 PersonAttribute 表: Table: Person Table PersonAttribute 我将如何编写一个查询,使所有具有属性的人都像列一样返回?我需要的结果集是: 因此,从本质上讲,我需要编写一个查询,该查询将获取所有带有所有唯一属性键的人记录,这些键被转换为具有每个人记录