Allegro75
@Allegro75
SummaryTables.ru - сайт с футбольной статистикой

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

Допустим, я сделал какой-то хитроумный SELECT (внутри него ещё селекты и всякие WHERE, GROUP, HAVING), к-рый вывел мне в итоге, скажем, две строки в две колонки.
Все четыре получившихся значения - это id-шки.
В конце концов мне надо вместо этих id-шек получить их названия, к-рые хранятся ещё в двух соседних таблицах.

Я первую колонку получить могу, а со второй возникают проблемы.
Скажем так:

SELECT table1.name1, table2.name2
FROM table1, table2
WHERE table1.id IN 
        (column_1 IN 
                (мой хитроумный первый SELECT)
        )


А дальше что?
Если я напишу

AND table2.id IN
        (column_2 IN 
                (мой хитроумный первый SELECT)
        )


то мне дадут 4 строки, а не искомые две.

Если напишу

AND table2.id =
        (column_2 IN 
                (мой хитроумный первый SELECT)
        )


мне скажут, что мой хитроумный возвращает больше одной записи.

Как это надо решать?
Надеюсь, всё корректно сформулировал.
  • Вопрос задан
  • 28 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы