loading..
Русский    English
18:10
листать

Объединение стр. 1

Для объединения запросов используется служебное слово UNION:

  1. <запрос 1>
  2. UNION [ALL]
  3. <запрос 2>

Предложение UNION приводит к появлению в результирующем наборе всех строк каждого из запросов. При этом, если определен параметр ALL, то сохраняются все дубликаты выходных строк, в противном случае в результирующем наборе присутствуют только уникальные строки. Заметим, что можно связывать вместе любое число запросов. Кроме того, с помощью скобок можно задавать порядок объединения.

Операция объединения может быть выполнена только при выполнении следующих условий:

  •  количество выходных столбцов каждого из запросов должно быть одинаковым;

  •  выходные столбцы каждого из запросов должны быть совместимы между собой (в порядке их следования) по типам данных;

  •  в результирующем наборе используются имена столбцов, заданные в первом запросе;

  •  предложение ORDER BY применяется к результату соединения, поэтому оно может быть указано только в конце всего составного запроса.

Пример 5.7.1

Найти номера моделей и цены ПК и портативных компьютеров:

Консоль
Выполнить
  1. SELECT model, price
  2. FROM PC
  3. UNION
  4. SELECT model, price
  5. FROM Laptop
  6. ORDER BY price DESC;

model    Price
1750    1200
1752   1150
1298    1050
1233    980
1321    970
1233    950
1121    850
1298    700
1232    600
1233    600
1232    400
1232    350
1260    350

Пример 5.7.2

Найти тип продукции, номер модели и цену ПК и портативных компьютеров:

Консоль
Выполнить
  1. SELECT Product.type, PC.model, price
  2. FROM PC INNER JOIN  
  3.      Product ON PC.model = Product.model
  4. UNION
  5. SELECT Product.type, Laptop.model, price
  6. FROM Laptop INNER JOIN  
  7.      Product ON Laptop.model = Product.model
  8. ORDER BY price DESC;

Type    Model   price
Laptop    1750    1200
Laptop    1752   1150
Laptop   1298   1050
PC    1233   980
Laptop   1321   970
PC    1233    950
PC    1121    850
Laptop    1298   700
PC    1232    600
PC    1233    600
PC    1232    400
PC    1232    350
PC    1260   350

Рекомендуемые упражнения: 7, 24, 26, 29, 30, 32, 36, 37, 43, 44, 45, 48, 49, 51, 54, 56, 57, 102, 113, 131

Bookmark and Share
Страницы: 1 2
Тэги:
ALL AND AUTO_INCREMENT AVG battles CASE CAST CHAR CHARINDEX CHECK classes COALESCE Convert COUNT CROSS APPLY CTE DATEDIFF DATENAME DATEPART DATETIME DDL DEFAULT DELETE DISTINCT DML EXCEPT EXISTS EXTRACT FROM FULL JOIN GROUP BY Guadalcanal HAVING IDENTITY IN INNER JOIN insert INTERSECT IS NOT NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker MAX MIN MONTH MySQL NOT Больше тэгов
Учебник обновлялся
месяц назад
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.
Rambler's Top100