MSSQL:没有聚合函数的Transpose-Pivot表

Ner*_* D. 3 sql sql-server transpose pivot aggregate

我需要有关MS SQL Transpose的帮助。我尝试了许多枢轴代码,但它们对我的数据没有帮助。这是我的数据。 在此处输入图片说明

我想不摆放(枢轴)它。数据应该是这样的

在此处输入图片说明

我尝试了以下代码;

SELECT * 
FROM (
        SELECT
        dm
        ,max(hucre) as mxhucre
        FROM #dene
        group by dm 
        ) as pTablom
PIVOT
(
        max(mxhucre)
        FOR dm IN (
        [1000_TEK?RDA? TM]
        ,[10000_TEKIRDAG OB1]
        ,[10100_YA?CI DM]
))AS Pvt
Run Code Online (Sandbox Code Playgroud)

但是得到了

在此处输入图片说明

这不是我想要的数据。大部分价值观消失了

如果我不使用聚集(最大-最小等),则该代码将无法正常工作。

请帮忙

Fah*_*hmi 6

使用条件聚合

SELECT 
    max(case when dm='1000_TEK?RDA? TM' then hucre end) as '1000_TEK?RDA? TM'
    max(case when dm='10000_TEKIRDAG OB1'then hucre end) as '10000_TEKIRDAG OB1',
    max(case when dm='10100_YA?CI DM  H04_T10' then hucre end) as '10100_YA?CI DM  H04_T10'
FROM #dene
group by dm
Run Code Online (Sandbox Code Playgroud)

  • 我会选择每周在SQL Server PIVOT上使用的anny,因为它读起来更容易,语法更易于使用,并且在大多数RDBMS系统之间可移植,因此+1 (2认同)