Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
16
Добавлен:
11.05.2015
Размер:
102.4 Кб
Скачать

Министерство образования и науки РФ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра промышленной электроники (ПрЭ)

Создание сложных запросов с использованием подзапросов и агрегированных функций

отчет по лабораторной работе №6

по дисциплине «Базы данных»

Выполнил:

студент гр.368-3

Пикулев К.А.______

Проверил:

ст. преподаватель каф. ПрЭ

Муравьев А.И.______

2012

Задание: Выбрать сотрудников, имеющих более 3 детей, один из которых учится в школе.

Запрос:

select * from mai.sotr where nom_sotr in (select nom_sotr from mai.deti group by nom_sotr having count(*)>3) and nom_sotr in (select nom_sotr from mai.deti where school is not null group by nom_sotr having count(*)=1 ) order by nom_sotr

NOM_SOTR

NOM_OTD

NAME1

NAME2

NAME3

CITY

DATE_B

STREET

HOUSE

FLAT

PHONE

ZARPL

21

111

Еремин

Александр

Антонович

Улан-Удэ

12.03.1970

297

105

86

239032

22000

39

117

Щукова

Светлана

Игоревна

С-Петербург

28.11.1986

475

162

27

685761

6000

150

110

Лахтина

Оксана

Ивановна

Магадан

09.04.1969

287

6

7

735545

11500

210

114

Рахлин

Вячеслав

Кириллович

Орел

11.02.1977

371

15

66

179570

11500

454

114

Кириллов

Алексей

Вячеславович

Новосибирск

20.01.1978

381

9

85

274826

19000

1629

115

Репников

Александр

Яковлевич

Астрахань

24.03.1980

404

17

104

239224

14500

1762

117

Серкова

Елена

Антоновна

Чита

30.01.1986

466

8/1

0

867434

17000

1920

103

Аносова

Марина

Кирилловна

Магнитогорск

25.08.1951

99

4

2

850755

23500

2923

107

Кравченко

Владимир

Антонович

Владивосток

04.08.1961

205

12

114

289182

16500

5208

108

Хаипова

Ольга

Станиславовна

Тюмень

15.06.1963

225

112

45

354232

8500

5476

110

Калинина

Зоя

Олеговна

Таганрог

25.02.1969

286

6

37

168648

12000

5479

115

Сгибнева

Дарья

Антоновна

Благовещенск

22.08.1979

397

41/1

14

356203

9000

5495

105

Иванова

Ольга

Антоновна

Ярославль

05.03.1956

147

23

10

126484

26500

6061

113

Заврина

Мария

Владимировна

Рязань

30.08.1976

366

11

116

238011

7500

6078

102

Трикилова

Галина

Олеговна

Тюмень

01.05.1949

74

5

49

239356

5500

6887

111

Зыкова

Ангелина

Кирилловна

Саранск

21.01.1970

295

16

32

794182

29000

7181

118

Дмитриев

Андрей

Федорович

Новосибирск

08.08.1988

493

93

90

365225

18000

7315

116

Акулинина

Ангелина

Ивановна

Якутск

23.10.1982

431

2

45

885890

13000

7924

119

Гриднева

Клавдия

Валерьевна

Рязань

28.06.1990

513

48

19

799876

8500

8475

102

Черногривов

Иван

Станиславович

Хабаровск

07.11.1947

58

6

117

708960

26000

8814

101

Довидович

Александр

Георгиевич

Ярославль

21.02.1945

30

22

17

799204

13000

9165

109

Гинкель

Антон

Никитович

Рязань

10.09.1965

249

16

14

129781

18000

9523

100

Первицкий

Федор

Станиславович

Улан-Удэ

23.08.1942

3

48

49

483317

15000

9735

113

Бакционова

Оксана

Федоровна

Пермь

06.08.1975

354

17

337

731840

11500

24

 

 

 

 

 

 

 

 

 

 

 

Ответы на контрольные вопросы:

  1. В какой части опции WHERE оператора SELECT должен находиться подзапрос?

В правой части опции WHERE находится подзапрос.

  1. В чем преимущество подзапросов?

Первичное число строк при многотабличных выборках может получиться очень большим. Время выборки будет достаточно большим, результат выборки занимает значительную память компьютера. Преимущество подзапросов заключается в том, что он может иметь несколько циклов повторений, что увеличивает быстроту запроса.

  1. Какая реляционная операция выполняется при многотабличной выборке?

Декартовое умножение

  1. Какая логическая операция используется, если подзапрос возвращает несколько строк?

IN - Логическая операция вхождения во множество.

  1. С какими функциями используется опция группировки?

Агрегированные функции:

SUM (поле) – возвращает суммарное значение поля

MIN (поле) – возвращает максимальное значение поля

MAX (поле) – возвращает минимальное значение поля

AVG (поле) – возвращает среднее значение поля

COUNT (поле) – возвращает количество строк с непустыми значениями поля

COUNT (*) – возвращает общее количество строк