【问题标题】:SQL Column name is a data and unpivoting not workingSQL 列名是一个数据并且反透视不起作用
【发布时间】:2021-03-26 05:58:42
【问题描述】:

首先感谢您的帮助!我尝试了 5 个多小时,但无法修复它..

我在下面有这张表:

有 57 个日期列.. 我的预期结果是(只需转置数据列,以便我可以在 PBI 中正确运行 Dax 公式 :))

所以,我做了这个 Unpivot:

SELECT [Provincias], [Paises], [Latitude], [Longitude], [DATE], [VALUE]
FROM
(SELECT [Province State], [Country Region], Lat, Long,  30/1/2020,  31/1/2020,  1/2/2020,   2/2/2020,   ...LOT OF DATES....
FROM [data_time_series_19-covid-Confirmed]) PT
UNPIVOT
(Dias FOR ds IN
(   30/1/2020,  31/1/2020,  1/2/2020,   2/2/2020.... LOT OF DATES....)
)AS unpvt

我尝试了 [日期],但效果不佳..

上面写着:'30' 附近的 Synthax 不正确..

如果是日期名称,SQL 似乎找不到列名称。它非常适合第 3 行,但在第 7 行中不起作用(尴尬 o.O)

但是当我输入时:

从 [data_time_series_19-covid-Confirmed] 中选择 [22/1/2020]

它工作正常!

谢谢

【问题讨论】:

  • 什么是 dbms(例如 MySQL、Oracle),这一点很重要,它会影响可用的解决方案。看起来像 TSQL 请只选择相关标签
  • 您没有回答自己的问题吗?您说,当您运行“从 [data_time_series_19-covid-Confirmed] 中选择 [22/1/2020]”时,它可以工作(并且在该查询中,列名周围有方括号),但在非透视查询中,您没有有方括号中的列名.....我有点困惑......
  • PaulMaxwell,我正在使用 SQL SERVER Bhaskar,谢谢,但没有解决 Craig,不,它不起作用.. 当我放入方括号时,它在 unpivot 中找不到列代码。仅在我使用“从”中选择 [数据] 时才有效。非常令人困惑

标签: sql sql-server pivot


【解决方案1】:

认为您需要将这些日期引用放在方括号之间

SELECT [Provincias], [Paises], [Latitude], [Longitude], [DATE], [VALUE]
FROM
(SELECT [Province State], [Country Region], Lat, Long,  [30/1/2020],  [31/1/2020],  [1/2/2020],   [2/2/2020]
FROM [data_time_series_19-covid-Confirmed]) PT
UNPIVOT
(Dias FOR ds IN
(   [30/1/2020],  [31/1/2020],  [1/2/2020],   [2/2/2020])
)AS unpvt

【讨论】:

    猜你喜欢
    • 2017-04-09
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-24
    相关资源
    最近更新 更多