【发布时间】:2020-11-24 20:21:27
【问题描述】:
我有一个名为 ADMIN 的表,最初看起来像这样
KEY VALUE
Version1 2019_RQK@2019
Version2 2019_RQK@2020
Version2 2019_RQK@2021
Version2 2019_RQK@2022
Version2 2020_TKA@2020
Version2 2020_TKA@2021
Version2 2020_TKA@2022
Version2 2020_TKA@2023
我正试着把它改成这样
VERSION YEAR1 YEAR2 YEAR3 YEAR4
2019_RQK 2019 2020 2021 2022
2020_TKA 2020 2021 2022 2023
我编写了一些 SQL 以获得 [VALUE] 列的左右版本,但我不知道如何压缩它,以便它只显示 DISTINCT 至 [VALUE] 列的左侧.我尝试使用 distinct,但它仍然会出现相同的重复条目,这是我到目前为止所写的,我不知道 PIVOT 函数是否可以在这里工作我尝试了一些最终没有正确的事情。
SELECT DISTINCT LEFT([VALUE], 7) AS VERSION, RIGHT([VALUE], 4) AS YEAR
FROM ADMIN
WHERE [KEY] LIKE '%VERSION%'
只是给我,不知道如何在同一个查询中更改它
VERSION YEAR
2019_RQK 2019
2019_RQK 2020
2019_RQK 2021
2019_RQK 2022
2020_TKA 2020
2020_TKA 2021
2020_TKA 2022
2020_TKA 2023
【问题讨论】:
标签: sql sql-server tsql pivot