带有动态列的T-SQL Pivot

时间:2015-10-14 16:45:53

标签: sql pivot

我知道有很多Pivot问题,但我找到的每一个似乎都会做某种SUM或COUNT操作,这不是我需要的。我有一张这样的桌子:

id      field        val
---------------------------------
1234    type         Blade Server
1234    memory       24
1234    hostname     test_box1
4567    type         Blade Server
4567    memory       98
4567    hostname     test_box2
4567    ip           192.168.1.4

id是链接field / val的外键。现场的内容是动态的,而且不是提前知道的......它基本上是一个通用的键/值对存储。 (我不能改变BTW ...它已经在架构中设置了)。但我正在尝试创建一个视图,它将采用上表并给我这个:

id      type            memory  hostname    ip  
-------------------------------------------------------
1234    Blade Server    24      test_box1   NULL
4567    Blade Server    98      test_box2   192.168.1.4

请注意,id 1234没有“ip”字段条目,因此需要在pivoted表中显示为NULL。基本上,每个“字段”选项都应该成为一个列,由“id”链接。我想这是一个聚合操作,但我无法想象如何让它工作......

有什么想法吗?

0 个答案:

没有答案