#sql #postgresql
#sql #postgresql
Вопрос:
В моей базе данных есть две таблицы (A, B), и я пытаюсь объединить их и дважды напечатать один и тот же столбец таблицы B в таблице результатов. Проблема в том, что мне нужно привести в соответствие два разных столбца таблицы A, чтобы объединить эти таблицы также дважды. Я попытался объединить их и поместить в столбец select expression required два раза, но в этом случае таблица результатов показывает одно и то же отношение в каждом столбце. Вот результат, который я хочу, где id
столбец таблицы B включает id_1
и id_2
из таблицы A, а выходные имена соответствуют идентификаторам из таблицы A.
Table A: (integer id_1, integer id_2)
Table B: (integer id, varchar name)
Result Table: (id_1, name, id_2, name)
Ответ №1:
Вам нужно inner join
с tableB
помощью twice следующим образом:
select a.id_1, b1.name, a.id_2, b2.name
from tableA a join tableB b1 on a.id_1 = b1.id
join tableB b2 on a.id_2 = b2.id