我有两张桌子ticket
和attr
. 表ticket
有ticked_id
字段和其他几个字段。表attr
有 3 个字段:
ticket_id - numeric
attr_type - numeric
attr_val - string
attr_type
是值的固定枚举。例如,它可以1
是2
或3
。
我需要进行查询,其结果将是 4 列:
ticket_id
,attr_val
对于attr_type=1
,attr_val
对于attr_type=2
,attr_val
对于attr_type=3
如果表中没有对应的值,则应attr_type
在attr
对应列中显示 NULL 值。
例子:
ticket
ticket_id: 1
ticket_id: 2
ticket_id: 3
attr
ticket_id: 1
attr_type: 1
attr_val: Foo
ticket_id: 1
attr_type: 2
attr_val: Bar
ticket_id: 1
attr_type: 3
attr_val: Egg
ticket_id: 2
attr_type: 2
attr_val: Spam
结果应该是:
ticked_id: 1
attr_val1: Foo
attr_val2: Bar
attr_val3: Egg
ticked_id: 2
attr_val1: NULL
attr_val2: Spam
attr_val3: NULL
ticked_id: 3
attr_val1: NULL
attr_val2: NULL
attr_val3: NULL
我尝试了attr
3 次左连接表,但无法弄清楚如何安排输出attr_type