【发布时间】:2021-06-09 17:46:36
【问题描述】:
试图找到解决方案,但到目前为止没有任何用处。我正在尝试从此格式转换 SQL 表:
+-----------+-------+--------+
| ProductID | Price | Client |
+-----------+-------+--------+
| bread | 12 | A |
| bread | 13 | B |
| bread | 14 | C |
| bread | 15 | E |
| sodapop | 5 | A |
| sodapop | 6 | B |
| sodapop | 7 | C |
| sodapop | 8 | D |
+-----------+-------+--------+
到这里
+-----------+----------------+----------------+----------------+----------------+--+
| ProductID | Client A Price | Client B Price | Client C Price | Client D Price | |
+-----------+----------------+----------------+----------------+----------------+--+
| bread | 12 | 13 | 14 | 15 | |
| sodapop | 5 | 6 | 7 | 8 | |
+-----------+----------------+----------------+----------------+----------------+--+
【问题讨论】:
-
到目前为止你尝试过什么?客户是固定的吗?您的源数据中有客户端 E,但结果中没有。
-
我已经尝试了提供的解决方案,不幸的是我得到了 2 个错误:Msg 8114, Level 16, State 1, Line 74 将数据类型 nvarchar 转换为浮点数时出错。消息 473,级别 16,状态 1,第 74 行 PIVOT 运算符中提供了不正确的值“Column1”。我已经完成了“CAST(Price AS FLOAT) AS Price”,但没有解决问题。还测试了 SELECT MAX(Price) FROM #temptable,它正在工作。
标签: sql sql-server tsql