Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_раб_10.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
122.37 Кб
Скачать

Union - объединение результатов выполнения нескольких операторов select.

Иногда бывает полезным объединять два или более результирующих набора данных возвращаемых после выполнения двух или более операторов SELECT. Такое объединение производится при помощи оператора UNION. Результирующие наборы данных должны иметь одинаковую структуру, т.е. одинаковый состав возвращаемых столбцов. Если в результирующих наборах данных имеется одна и та же запись, в сводном наборе данных она не дублируется.

ПРИМЕР

Соединить результаты выполнения трех запросов:

1) выбрать данные для паспортов с серией АА;

2) выбрать данные для паспортов, номер которых начинается на 4;

3) выбрать данные для паспортов, выданных в 2000 году;

SELECT *

FROM PasportData

WHERE Series = ‘AA’

Результат работы оператора приведен в таблице 11.4.

Таблица 11.4.

Code

Series

Number

Birthday

Birthplace

Sex

IssuePlace

IssueDate

Note

1

АА

45003

30.05.1930

Россия, г. Опочка

Жен.

Днепропет-ровск

12.01.1995

blob

2

АА

15700

23.02.1930

Россия. г. Владимир

Жен.

г. Житомир

16.03.2000

blob

SELECT *

FROM PasportData

WHERE Number BETWEEN 40000 AND 49999

Результат работы оператора приведен в таблице 11.5.

Таблица 11.5.

Code

Series

Number

Birthday

Birthplace

Sex

IssuePlace

IssueDate

Note

1

АА

45003

30.05.1930

Россия, г. Опочка

Жен.

Днепропет-ровск

12.01.1995

blob

7

АЗ

43188

13.11.1970

Днепропетровская область, г. Днепродзержинск

Жен.

Днепропет-ровская область, г. Днепро-дзержинск

15.05.1998

blob

12

ИК

45190

18.07.1983

Днепропетровская область, село Петропавловка

Жен.

Днепропетровская область, село Петропав-ловка

20.09.1999

blob

SELECT *

FROM PasportData

WHERE IssueDate BETWEEN ‘01/01/2000’ AND ‘12/31/2000’

Результат работы оператора приведен в таблице 11.6.

Таблица 11.6.

Code

Series

Number

Birthday

Birthplace

Sex

IssuePlace

IssueDate

Note

2

АА

15700

23.02.1930

Россия. г. Владимир

Жен.

г. Житомир

16.03.2000

blob

8

АК

23490

05.01.1961

Россия, город Самара

Жен.

Днепропет-ровск

13.09.2000

blob

Произведем объединение трех результирующих наборов данных.

SELECT *

FROM PasportData

WHERE Series = ‘AA’

UNION

SELECT *

FROM PasportData

WHERE Number BETWEEN 40000 AND 49999

UNION

SELECT *

FROM PasportData

WHERE IssueDate BETWEEN ‘01/01/2000’

AND ‘12/31/2000’

Результат работы оператора приведен в таблице 11.7.

Таблица 11.7.

Code

Series

Number

Birthday

Birthplace

Sex

IssuePlace

IssueDate

Note

1

АА

45003

30.05.1930

Россия, г. Опочка

Жен.

Днепропет-ровск

12.01.1995

blob

2

АА

15700

23.02.1930

Россия. г. Владимир

Жен.

г. Житомир

16.03.2000

blob

7

АЗ

43188

13.11.1970

Днепропетровская область, г. Днепродзержинск

Жен.

Днепропет-ровская область, г. Днепро-дзержинск

15.05.1998

blob

12

ИК

45190

18.07.1983

Днепропетровская область, село Петропавловка

Жен.

Днепропетровская область, село Петропав-ловка

20.09.1999

blob

8

АК

23490

05.01.1961

Россия, город Самара

Жен.

Днепропет-ровск

13.09.2000

blob

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]