SQL — Условия UNION

SQL — Условия UNION

От автора: условие/оператор SQL UNION используется для объединения результатов двух или более инструкций SELECT без включения повторяющихся строк.

Для использования условия UNION, каждый оператор SELECT должен содержать

Такое же количество выбранных столбцов

Такое же количество выражений столбцов

Тот же тип данных

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее

Они должны располагаться в том же порядке

Но они не обязательно должны быть одинаковой длины.

Синтаксис

Основной синтаксис условия UNION следующий:

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]
UNION
SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

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

Пример

Рассмотрим следующие две таблицы. Таблица 1 — Таблица CUSTOMERS выглядит следующим образом.

SQL — Условия UNION

Таблица 2 — Таблица ORDERS выглядит следующим образом.

SQL — Условия UNION

Теперь давайте объединим эти две таблицы в инструкции SELECT следующим образом:

SELECT  ID, NAME, AMOUNT, DATE
  FROM CUSTOMERS
  LEFT JOIN ORDERS
  ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION
  SELECT  ID, NAME, AMOUNT, DATE
  FROM CUSTOMERS
  RIGHT JOIN ORDERS
  ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;

Это даст следующий результат -

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее

SQL — Условия UNION

Условие UNION ALL

Оператор UNION ALL используется для объединения результатов двух операторов SELECT, с включением повторяющихся строк.
Те же правила, которые применяются к условию UNION, будут применяться к оператору UNION ALL.

Синтаксис

Основной синтаксис UNION ALL следующий.

SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]
UNION ALL
SELECT column1 [, column2 ]
FROM table1 [, table2 ]
[WHERE condition]

Здесь данное условие может быть любым выражением, заданным исходя из ваших потребностей

Пример

Рассмотрим следующие две таблицы, Таблица 1 — Таблица CUSTOMERS выглядит следующим образом.

SQL — Условия UNION

Таблица 2 — таблица ORDERS выглядит следующим образом.

SQL — Условия UNION

Теперь давайте объединим эти две таблицы в инструкции SELECT следующим образом:

SELECT  ID, NAME, AMOUNT, DATE
  FROM CUSTOMERS
  LEFT JOIN ORDERS
  ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION ALL
  SELECT  ID, NAME, AMOUNT, DATE
  FROM CUSTOMERS
  RIGHT JOIN ORDERS
  ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;

Это даст следующий результат:

SQL — Условия UNION

Существует два других условия или оператора похожих на условие UNION.

Условие SQL INTERSECT − используется для объединения двух инструкций SELECT, но возвращает только строки из первого оператора SELECT, которые совпадают со строкой из второго оператора SELECT.

Условие SQL EXCEPT − объединяет два оператора SELECT и возвращает строки из первого оператора SELECT, которые не возвращаются вторым оператором SELECT.

Источник: https://www.tutorialspoint.com/

Редакция: Команда webformyself.

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее
Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Хотите изучить MySQL?

Прямо сейчас посмотрите 24-х часовой курс по базе данных MySQL!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree