【发布时间】:2013-09-30 14:51:54
【问题描述】:
我正在使用一个允许用户创建自己的字段的系统。这在 Oracle 中实现为字段表,然后是字段/值表。如果我运行这样的查询:
SELECT
field_name, field_value
FROM field_t
INNER JOIN field_t ON field_t.id = field_string_t.field_id
WHERE (field_name = 'foo'
OR field_name = 'bar'
OR field_name = 'buzz'
)
然后我可以在一系列行中获取字段名称/值对:
id field_name field_value
8 foo 1
8 bar 5
8 buzz 4
... and so on for each id
我如何编写查询来返回它:
id foo bar buzz
8 1 5 4
?
谢谢。
【问题讨论】:
-
这称为 pivoting - 参见例如。 stackoverflow.com/questions/17116354/…