В PostgreSQL можно объединить два запроса с помощью ключевого слова UNION или UNION ALL. UNION объединяет результаты двух запросов, удаляя дублирующиеся строки, в то время как UNION ALL включает все строки, включая дубликаты.
Допустим, у нас есть два запроса:
SELECT name FROM table1; SELECT name FROM table2;
Чтобы объединить результаты этих запросов и получить один совместный набор результатов, мы можем использовать UNION:
SELECT name FROM table1 UNION SELECT name FROM table2;
В этом случае, дублирующиеся строки будут удалены.
Если же вам нужно включить все строки, включая дубликаты, то используйте UNION ALL:
SELECT name FROM table1 UNION ALL SELECT name FROM table2;
Вы также можете добавить дополнительные условия и столбцы к каждому запросу, чтобы получить более сложный результат. Например:
SELECT name, age FROM table1 WHERE age > 18 UNION ALL SELECT name, age FROM table2 WHERE age > 18;
Этот запрос объединяет только те строки, где возраст больше 18, но включает все строки без удаления дубликатов.
Обратите внимание, что оба запроса должны иметь одинаковое количество столбцов и совместимые типы данных для соответствующих столбцов. Если необходимо, вы также можете указать дополнительные операции для объединения запросов, такие как сортировку или фильтрацию.