Задать вопрос
iNickolay
@iNickolay

Как присоединить таблицу в зависимости от значения в строке?

Здравствуйте! Имеем простой запрос:
SELECT t1.type_id, t1.name
FROM table1 t1
WHERE t1.data_id = ?

Как, в зависимости от значения ячейки type_id, сделать JOIN определённой таблицы?

P.S. CASE, как я понял, не работает с выражениями :(
  • Вопрос задан
  • 50 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
@zhainar
Гуглю за вас
попробуйте
SELECT t1.type_id, t1.name
FROM table1 t1
JOIN table2 t2 on 1 = 1 and t1.type_id = 'my_type'
WHERE t1.data_id = ?
Ответ написан
@MaximaXXl
Я не очень понял что за данные Вы хотите вывести, но такой структурой можно описать то что Вы хотите.
SELECT t1.type_id, t1.name, coalesce(t01.id, t02.id) t0_id
FROM table1 t1
left join type1 t01 on (t1.type_id = t01.id and t1.type_id = type1)
left join type1 t02 on (t1.type_id = t02.id and t1.type_id = type2)
WHERE t1.data_id = ?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы