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

Хочу заменить UNION с помощью LEFT JOIN.
В одной и другой таблице есть поля id и name.
Нужно соединить обе таблицы в одну.

SELECT id, name
FROM articles 
INNER JOIN articles_authors ON articles.id = articles_authors.id
WHERE IF(articles.id != '', articles.id, articles_authors.id)
  • Вопрос задан
  • 191 просмотр
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
SELECT articles.id, -- можно указывать не только имя столбца, но и таблицу
foo.id, authors.name, bar.id, -- можно давать таблицам псевдонимы (alias)
bar.id as QWERTY, -- еще можно так
bar.id ZZZ -- и даже так

FROM articles foo -- foo псевдоним для таблицы articles
INNER JOIN articles_authors bar -- bar - псевдоним для articles_authors
  ON articles.id = articles_authors.id
WHERE IF(articles.id != '', articles.id, articles_authors.id)
Ответ написан
Ваш ответ на вопрос

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

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