【发布时间】:2026-01-03 17:50:01
【问题描述】:
我有这张桌子:
itemid attributename value
6829556334057807840 Part Notes Drilling Required: No,Install Time: 30 Minutes,Fascia Trimming: Yes (minor),Visibility: Exposed
我希望能够将 Value 列中的数据转换为 KeyValue 对
Example:
ItemId Key Value
6829556334057807840 Drilling Required No
6829556334057807840 Install Time 30
6829556334057807840 Fascia Trimming Yes (minor)
但是,数据透视必须是动态的,因为值列可以有多个不同的键值,具体取决于列中的内容。
【问题讨论】:
-
这实际上不需要是动态枢轴。您只是想将分隔的字符串拆分为行,然后再次拆分为单独的列。
-
这里的最佳解决方案是首先不要像这样存储数据。如果可以,请修复您的数据库,而不是试图让 SQL Server 进行笨拙的转换。
标签: sql sql-server dynamic-pivot