У меня есть две таблицы 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 нет соответствующего значения для attr_type, тогда в соответствующем столбце должно отображаться значение 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