@VoDem

Как составить запрос к нескольким таблицам?

У меня есть 10 таблиц с общими столбцами, допустим 'phone'. Как правильно составить запрос поиска по 'phone' ко всем таблицам сразу?
  • Вопрос задан
  • 94 просмотра
Решения вопроса 1
rozhnev
@rozhnev
Fullstack programmer, DBA, медленно, дорого
Похоже Вам нужен UNION
select 't1', phone           from t1 where phone = '987654321'
union all select 't2', phone from t2 where phone = '987654321'
union all select 't3', phone from t3 where phone = '987654321'


https://sqlize.online/sql/psql14/ac0b0a66662794d8c...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
fenrir1121
@fenrir1121
Начни с документации
Использоваться девятью INNER JOIN.

Но что-то мне подсказывает проблема в архитектуре базы и отсутствии внешних ключей, а не в необходимости запроса к 10 таблицам.
Ответ написан
Комментировать
@mvv-rus
Настоящий админ AD и ненастоящий программист
Используйте UNION для объединения результатов запросов к каждой из таблиц: да, надо написать все десять запосов с UNION между ними. Подробности - https://www.postgresql.org/docs/current/queries-un...
PS Присоединяюсь к предложению предыдущего комментатора: наличие таких задач намекает на то, что надо бы задуматься над архитектурой БД.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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