我有一个 SQL Server 表,其中包含一些数据,如下所示。P列的数量是固定的,但会出现太多的列。时尚方面会有多个栏目,如S1、S2等
| ID | 已选P | P1 | P2 | P3 | P4 | P5 |
|---|---|---|---|---|---|---|
| 1 | P2 | 3 | 8 | 4 | 15 | 7 |
| 2 | P1 | 0 | 2 | 6 | 0 | 3 |
| 3 | P3 | 1 | 15 | 2 | 1 | 11 |
| 4 | P4 | 3 | 4 | 6 | 2 | 4 |
我需要编写一条 SQL 语句来得到下面的结果。基本上,需要从每行中选择哪一列取决于该行本身的 SelectedP 值。SelectedP 包含要为每行选择的列。
| ID | 已选P | 选定的 P 值 |
|---|---|---|
| 1 | P2 | 8 |
| 2 | P1 | 0 |
| 3 | P3 | 2 |
| 4 | P4 | 2 |
提前致谢。