2016-09-28 3 views
0

Исходя из моего previous questionПолучение более одного поля с выбором соединения?

Я использую следующие действия, чтобы получить все слизней из таблицы выделения, которые также существуют в пользовательском или статьи таблице:

SELECT `highlight`.`slug` from `highlight` 
WHERE `highlight`.`slug` IN (SELECT `user`.`slug` FROM `user` 
UNION SELECT `article`.`slug` FROM `article`) 

Сейчас вопрос в том, что я хочу, чтобы выбрать название из статьи и таблицы пользователя. Я попытался добавить столбец в select, но он не работает.

Как я могу вытащить название?

EDIT:

Выделите Таблица

id | slug 
1 blue 
2 green 

Статья Таблица

id | slug | title 
1 blue BT 
2 pink PT 

Таблица Пользователь

id | slug | title 
1 blue BT 
2 green GT 
3 brown BRT 

Вы должны выйти, BT и GT в качестве названия.

+1

Не могли бы вы добавить некоторый ввод проб и ожидаемый результат? – 1000111

ответ

0

Из верхней части моей головы: Я думаю, что вам нужно сформулировать запрос, другой способ округло SELECTUNION из двух таблиц, а затем (INNER) JOIN его на кульминационной таблице:

SELECT 
    a.slug, a.title 
FROM 
    (SELECT slug, title FROM user 
    UNION 
    SELECT slug, title FROM article) 
) AS a 
INNER JOIN highlight 
    ON a.slug = highlight.slug 
Смежные вопросы