Главная » Просмотр файлов » С.Д. Кузнецов - Основы баз данных

С.Д. Кузнецов - Основы баз данных (1121716), страница 75

Файл №1121716 С.Д. Кузнецов - Основы баз данных (С.Д. Кузнецов - Основы баз данных) 75 страницаС.Д. Кузнецов - Основы баз данных (1121716) страница 752019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 75)

16.2. Результат запроса с разделом ОВООР Ву еоььОР к таблице с неопределенными значениями столбцов группировки 359 Очевидно, что, просматривая строки таблицы, показанной на рис. 16.2, невозможно установить, в какой из первых трех строк неопределенное значение столбцов Рерт мО и емр ВРАте означает то, что эта строка является сводной для всего предприятия, а не то, что она является сводной для всех служащих с неизвестными номером отдела и годом рождения или просто для всех служащих с неизвестным номером отдела.

Аналогичным образом невозможно понять, какая строка в следующей далее паре строк является сводной для всех служащих отдела номер 1, а не для всех служащих отдела номер 1 с неизвестным годом рождения. Для того чтобы всегда можно было разобраться в результатах запросов, включающих раздел ОВООР ВУ ВОььОР, в язык Я~Ь была введена специальная агрегатная функция СВООР1ИС. Эта функция применяется к столбцу, входящему в список столбцов раздела ОЕОРР ВУ ЕОЬЬОР, и принимает целое значение ! в тех строках результирующей таблицы„в которых соответствующий столбец имеет значение гд!ьь по той причине, что стро* Мы опять искусственным образом упорядочили результат запроса дяя удобства пояснений.

Основы баэ данных Курс ка является сводной для более обобщенной группы. В противном случае функция СВООР НС принимает значение О, Уточним формулировку запроса из примера 16.! (пример 16. 1а): БЕ1 ЕС. ЗЕРТ НО, ЕМР ВОАТЕ, МАХ ~ЕМР БАЬ) АБ МАХ БАЬ, СВОЛРТНС (БЕРТ МО~ йБ СОМ, СКОСРТНС (КМР ВЗА Е~ АБ СЕВ РКСМ ЕМР СВОЛР ВУ КОЬЬЛР ~ЗЕРТ НО, ЕМР ВЭАТЕ~~, Результируюпгая таблица для этого запроса будет иметь следукяций вид; МАХ БАЬ СЕВ ОКР МО ЕМР ВОАТЕ 22000.00 19000.00 14000.00 НОЬЬ 1'ЛЛ 1 19000.00 ЖЛ1 20000.00 МЛ Ь 22000.00 17000.00 16000.00 1950 19000.00 1960 17000.00 20000.00 1950 1960 18000.00 1950 22000.00 1960 1950 14000.00 Рис.

16.3. Результат запроса с разделом ОВСОВ Ву КОЬЬЛР и вызова- ми агрегатной функции ОВОЛР1МС к таблице с неопределенными значениями столбцов группировки 360 Анализируя значения столбцов СОМ и СЕВ в строках таблицы, показанной на рис. 16.4, можно убедиться, что значение столбца мйх Бйь в первой строке является максимальным значением зарплаты всех служащих предприятия, во второй строке — максимальным значением зарплаты служащих с неизвестными номером отдела и годом рождения, а в третьей строке — максимальным значением зарплаты всех служащих с неизвест- Лекция 16 Средства формулировки аналитических и рекурсивных запросов ным номером отдела.

В следующих трех строках значения столбца мАХ ЯАь являются максимальными значениями зарплаты служащих с неизвестным годом рождения из отделов с номерами 1, 2 и 3 соответственно. Как видно, значения столбцов спм и сеВ являются своего рода индикаторами, указывающими на природу основных значений строки. РаЗДЕЛ СДОПР ВУ СПВД Наконец, заметим, что, в отличие от запросов с традиционной группировкой, результат запроса, содержащего раздел СЛОВЕ Ву ВОЬЬОР, зависит от порядка столбцов в списке группировки. При выполнении запроса происходит движение по этому списку слева направо с повышением уровня детальности результирукнцих данных.

Существует еще одна разновидность запроса с группировкой, основанная на использовании раздела СЕОЦР ВУ СОВЕ. Пусть раздел группировки запроса имеет вид сВООР ВУ СОВЕ (опале„спаае„,.., сп.цле,), где славе, (1 = 1, 2,..., и) — имястолбца таблицы-результата раздела РВОМ запроса. Обозначим через Яек множество (слезе„спатле„..., слагае„). Пусть Я, является произвольным подмножеством Яз, т. е.

Я, представляет собой пустое множество или имеет вид (слете„, слете„,..., спетле„,), где лт~п, и каждое имя столбца спаве1, совпадает с одним и только одним именем столбца из списка столбцов раздела сВООР ву сцве. Очевидно, что у множества Я„е существует 2' подмножеств различных вида Я,. Тогда по определению результат этого запроса совпадает с объединением результатов 2" запросов с теми же разделами ЯЕЬЕСт, РЕОми(чнеВЕ,чтоиузапросасСВООР ВУ СОВЕ,исразделом группировки внда СВООР Ву Я„причем во всех строках результата частичного запроса значением любого столбца сказе; такого, что спало, 6 я, и спаае, ~ я„является мцьь. Запрос с разделом группировки вида СЕООР ВУ Я, ГДЕ Я вЂ” ПУСтое мНОжЕСтВО, траКтуЕтСя как запрос без раздела СЕООР ВУ.

Вот пример запроса, содержащего раздел сеООР ву ОВВЕ. Пример 16.2. Найти максимальный размер зарплаты во всем предприятии, максимальный размер зарплаты в каждом отделе, максимальный размер зарплаты служащих в каждой возрастной категории и максимальный размер зарплаты служащих каждой возрастной категории каждого отдела. ЯЕЬЕСТ РЕРТ НО, ЕМР ВРАТЕ, МАХ (ЕМР ЯАЬ)АЯ МАХ ЯАЬ, СВООР?ИС (ОЕРТ ИО) АЯ СОИ, СВООРТМС (ЕМР ВОАТЕ) АЯ СЕВ РВОМ ЕМР СЛОЙЕР ВУ О()ВЕ (РЕРТ ИО, ЕМР ВОАТЕ); Результирующая таблица для этого запроса будет иметь следующий вид: 361 Основы баз данных Курс СЕВ ЕМР ВВАТЕ ВЕРТ НО 22000.00 нпьь 19000.00 14000.00 $$$ ! $ 20000.00 ИПЕЮ 22000.00 17000.00 16000.00 1950 19000.00 1960 $ $$ $! $ 20000.00 1960 ° !!! $$ $ $ $$ $$ $ 1950 18000.00 22000.00 1960 Рис.

16.4. Результат запроса с разделом ОЕО1Р Ву СОВЕ и вызовами агрегатной функции ОЕОВР1ИО к таблице с неопределенными значениями столбцов группировки Как видно, результат запроса из примера 16.2 совсем немного отличается от результата запроса из примера 16.!а. Добавились две последние строки, показывающие максимальные значения зарплаты всех служащих предприятия, родившихся в 1950-м и 1960-м гг. соответственно.

Наш пример может навести на мысль, что и в обшем случае запросы, содержащие раздел СВОВР ву СВВЕ, не слишком отличаются от запросов с аеопР ву еоеепР, и выполнение этих запросов тоже не слишком различается. Однако это совсем не так. Запрос, содержаший раздел ОЕОВР ВУ Савве, действительно вырождается в объединение результатов 2" запросов с обычным разделом Оеопр ву.

Соответственно, сложность выполнения такого запроса несравненно выше сложности выполнения похожегозапросас ОЕОиР Ву ЕОЕЕВР. В нашем примере все получилось так просто только по той причине, что в запросе имеются всего два столбца группировки. 362 Лекция 1Б Средства формулировки аналитических и рекурсивных запросов Рекурсивные запросы Начнем этот раздел с нескольких определений, касаюшихся понятий, которые связаны с рекурсией.

Эти понятия имеют обший характер, но в приведенных ниже определениях и комментариях к ним (там, где это уместно) подчеркивается контекст ЯЯ1.. Определения, относящиеся к рекурсии Обход дерева в ширину. При этом способе обхода непосредственные потомки обходятся слева направо, до того как производится переход к потомкам следующего уровня родства. Рис. 16.5. Пример дерева При обходе в ширину дерева, показанного на рис. 16.5, узлы будут обходиться в следующем порядке: корень-Потомок1-Потомок2- ПотомокЗ-Г1.1-Г1.2-П1.3-22.1-Г2,З-ГЗ.1-ГЗ.2-ПЗ.З. Обход дерева в глубину.

При этом способе обхода на каждом шаге производится переход к самому левому текущему потомку. При обходе в глубину дерева с рис. 16.5 порядок обхода узлов будет следующим: Корень-По=омок1-П1.1-Г1.2-21.3-Готомок2-П2.1-Г2.2-Г2.3-ПотомокЗ-ПЗ.1-23.2-ПЗ.З. Цикл в ориентированном графе. В теории графов ориентированный граф называется циклическим в том и только в том случае, когда хотя бы один узел графа одновременно является и предком, и потомком (т. е.

для этого узла имеется и выходящая, и входяшая дуги). В Я21:1999 узлами графа рекурсии являются строки, входящие в результат рекурсивного запроса, а дуги соответствуют способам обработки текуших строк, которые ведут к добавлению к результату новых строк.

На рис. 16.6 показан простейший пример ориентированного графа с циклом. ЗБЗ Основы баз данных Курс Рис. 16.6. Пример графа с циклом Прямая рекурсия. По определению, некоторый элемент использует прямую рекурсию в том и только в том случае, когда он обращается сам к себе без посредников. Пример, приведенный на рис.

16.6, демонстрирует (в трафовой форме) прямую рекурсию. На рис. 16.7 показан графовый пример непрямой рекурсии. Рис, 16.7. Графовый пример непрямой рекурсии Линейная рекурсия. При линейно рекурсивном вызове элемент прямо рекурсивно обращается сам к себе не более одного раза. В 8( )(с1999 в определении любой виртуальной таблицы с рекурсией допускается не более одной ссылки на саму себя (в разделе твом и/или в подзапросах). На рис. 16.8 показан графовый пример рекурсии, не являющейся линейной. Монотонность.

Характеристики

Тип файла
PDF-файл
Размер
5,28 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее