PostgreSQL CROSS JOIN
Как работает Cross Join в PostgreSQL?
Cross Join создает декартово произведение между двумя наборами данных. Этот тип соединения не поддерживает никаких отношений между наборами; вместо этого возвращает результат, который представляет собой количество строк в первой таблице, умноженное на количество строк во второй таблице. Он называется продуктом, потому что он возвращает все возможные комбинации строк между объединенными наборами.
Синтаксис:
ВЫБРАТЬ [* | column_list] ИЗ таблицы 1 CROSS JOIN table2;
ИЛИ ЖЕ
ВЫБРАТЬ [* | column_list] ИЗ таблицы 1, таблицы 2;
Образцы таблиц
Заказчик :
Предмет :
Счет-фактура:
SQL
Код:
SELECT * FROM customer
CROSS JOIN
invoice;
ИЛИ ЖЕ
Код:
SELECT * FROM
customer,invoice;
ИЛИ ЖЕ
Код:
SELECT customer.cust_no, customer.cust_name,
invoice.invoice_no,invoice.cust_no,invoice.item_no,
invoice.sold_qty,invoice.disc_per
FROM customer,invoice;
Выход:
объяснение
В вышеприведенном примере таблица 'customer' и таблица 'invoice' объединяются, чтобы вернуть декартово произведение. Здесь в вышеприведенном примере две строки таблицы 'customer' объединяются с 4 строками таблицы 'invoice' и образуют продукт из 4 * 2 строк.
Иллюстрированная презентация:
Предыдущая: Введение в JOIN
Далее: ВНУТРЕННИЙ РЕЙ
Новый контент: Composer: менеджер зависимостей для PHP , R программирования