условное выражение участвует в mysql

Очень серьезное основание для использования IDE состоит в том, что они - принятый способ произвести современное программное обеспечение. Если Вы не используете один, то Вы, вероятно, используете "старомодный" материал как vi и emacs. Это может привести людей завершать - возможно неправильно - что Вы застреваете в своих путях и неспособны адаптироваться к новым способам работать. В промышленности, такой как разработка программного обеспечения - где идеи могут устареть в простых месяцах - это - опасное состояние для вхождения. Это могло серьезно повредить Ваши будущие перспективы получения работы...

18
задан 10 August 2009 в 15:19
поделиться

3 ответа

уродливый способ:

Типы таблиц, T1, T2:

SELECT ... FROM Types, T1 , where Types.ID=T1.Types_ID AND Types.TYPE='TABLE1'
UNION
SELECT ... FROM Types, T2 , where Types.ID=T2.Types_ID AND Types.TYPE='TABLE2'
6
ответ дан 30 November 2019 в 08:04
поделиться

Вы не можете сделать это прямо вот так ... вы можете сделать что-то вроде этого (не очень красиво ...):

SELECT
t.id,
t.type,
t2.id AS id2,
t3.id AS id3

FROM t
LEFT JOIN t2 ON t2.id = t.id AND t.type = 't2'
LEFT JOIN t3 ON t3.id = t.id AND t.type = 't3'
19
ответ дан 30 November 2019 в 08:04
поделиться

В дополнение к предыдущему ответу: {{1} } Вы можете объединить результаты двух левых объединений, используя оператор IF: IF (t.type = 't2', t2.id, t3.id) as type_id

Вы можете увидеть другой mysql пример условного соединения на mysqldiary.com

5
ответ дан 30 November 2019 в 08:04
поделиться
Другие вопросы по тегам:

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