如何基于其他列的唯一值在SELECT查询中创建列?
例如,我有两个表项目和特征,一个项目可以具有多个特征。
项目:
item_id | price
i1 0.13
i2 0.40
i3 0.24
...
特征:
char_id | item_id | char_value
c001 i1 2
c498 i1 6
c001 i2 4
c265 i2 1
c378 i3 9
... ... ...
我希望SQL查询的输出是
item_id | price | c001 | c265 | c378 | c498
i1 0.13 2 null null 6
i2 0.40 4 1 null null
i3 0.24 null null 9 null
...
请记住,可能有很多不同的char_id,因此不能手动定义列为c001
,c265
,c378
和c498
。手动定义每一列将需要我编写数百行SQL查询。
有没有一种方法可以创建可以执行此操作的SQL查询?