Скачать презентацию Извлечение результирующих множеств Цели урока В этом уроке Скачать презентацию Извлечение результирующих множеств Цели урока В этом уроке

IDD1_1B_Russian.ppt

  • Количество слайдов: 51

Извлечение результирующих множеств Цели урока В этом уроке вы узнаете как: • применять подстановочные Извлечение результирующих множеств Цели урока В этом уроке вы узнаете как: • применять подстановочные знаки • • ©NIIT применять ключевые слова IS NULL и IS NOT NULL применять выражение ORDER BY применять ключевое слово TOP применять ключевое слово DISTINCT применять обобщенные функции в запросах группировать результирующие множества применять выражения COMPUTE и COMPUTE BY Извлечение результирующих множеств Урок 1 B / Слайд 1 из 53

Извлечение результирующих множеств СРС 4_1 1. Определить арифметический оператор получения остатка целочисленного деления 2. Извлечение результирующих множеств СРС 4_1 1. Определить арифметический оператор получения остатка целочисленного деления 2. Что такое приоритет оператора ? 1. Перечислить операторы сравнения ? 1. Перечислить операторы диапазона ? 5. Перечислить операторы списка ? ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 2 из 53

Извлечение результирующих множеств Извлечение строк таблицы на основе сравнения с образцом Формулировка задачи Должен Извлечение результирующих множеств Извлечение строк таблицы на основе сравнения с образцом Формулировка задачи Должен быть подписан контракт с Jackson Demello из газеты Texas Times. Но есть три газеты, содержащие слова “Texas Times” и другие слова. Для обеспечения контракта с нужной газетой, нужно отобразить такие данные, как названия газет, контактные лица и номера телефонов газет, в названиях которых есть “Texas Times”. ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 3 из 53

Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать формат выхода запроса Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 4 из 53

Извлечение результирующих множеств Создать формат выхода запроса • Результат: • Требуемые выходные данные отчета Извлечение результирующих множеств Создать формат выхода запроса • Результат: • Требуемые выходные данные отчета – это название газеты, контактное лицо и номера телефонов • Заголовки столбцов, требуемые в отчете, - это c. Newspaper. Name, v. Contact. Person и c. Phone • • Название газеты должно быть с фразой “Texas Times” Формат отчета: c. Newspaper. Name ©NIIT v. Contact. Person Извлечение результирующих множеств c. Phone Урок 1 B / Слайд 5 из 53

Извлечение результирующих множеств Составить запрос • Оператор строковой операции • • • Можно применить Извлечение результирующих множеств Составить запрос • Оператор строковой операции • • • Можно применить ключевое слово LIKE для поиска строки с подстановочным знаком LIKE выбирает те строки таблицы, которые соответствуют заданной части символьной строки. Результат: • • ©NIIT Требуемая информация доступна в таблице Newspaper (Газета) Т. к. в названии газеты должно быть "Texas Times", и перед и после него может быть любой символ, должен применяться подстановочный знак %. Извлечение результирующих множеств Урок 1 B / Слайд 6 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT c. Newspaper. Name, v. Contact. Person, c. Phone FROM Newspaper WHERE c. Newspaper. Name LIKE '%Texas Times%' ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 7 из 53

Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer набрать запрос Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 8 из 53

Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • • ©NIIT Отображены требуемые столбцы. Отображены все строки, отвечающие условию выражения WHERE Извлечение результирующих множеств Урок 1 B / Слайд 9 из 53

Извлечение результирующих множеств Отображение строк с отсутствующими значениями Формулировка задачи Требуется список кандидатов, собеседование Извлечение результирующих множеств Отображение строк с отсутствующими значениями Формулировка задачи Требуется список кандидатов, собеседование с которыми еще не запланировано. ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 10 из 53

Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать формат выхода запроса Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 11 из 53

Извлечение результирующих множеств Создать формат выхода запроса • Результат: • ©NIIT Требование к отчету Извлечение результирующих множеств Создать формат выхода запроса • Результат: • ©NIIT Требование к отчету - имена кандидатов, собеседование с которыми еще не запланировано Извлечение результирующих множеств Урок 1 B / Слайд 12 из 53

Извлечение результирующих множеств Составить запрос • Ключевые слова IS NULL и IS NOT NULL Извлечение результирующих множеств Составить запрос • Ключевые слова IS NULL и IS NOT NULL • NULL – неизвестное значение или значение, для которого нет данных • Синтаксис SELECT column_list FROM table_name WHERE column_name unknown_value_operator • Результат: • • ©NIIT Информация имеется в табл. External. Candidate (внешний кандидат) Условие - дата теста должна быть NULL Извлечение результирующих множеств Урок 1 B / Слайд 13 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT v. First. Name, v. Last. Name, d. Interview. Date FROM External. Candidate WHERE d. Interview. Date IS NULL ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 14 из 53

Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer набрать запрос Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 15 из 53

Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • • ©NIIT Отображены требуемые столбцы Отображены все строки с NULL значением в атрибуте d. Interview. Date Извлечение результирующих множеств Урок 1 B / Слайд 16 из 53

Извлечение результирующих множеств Отображение данных в особом порядке Формулировка задачи Требуется отчет о всех Извлечение результирующих множеств Отображение данных в особом порядке Формулировка задачи Требуется отчет о всех должностях как исходные данные для дальнейшего анализа числа вакансий. Будет создан отчет в порядке возрастания должности. ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 17 из 53

Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать формат выхода запроса Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 18 из 53

Извлечение результирующих множеств Создать формат выхода запроса • Результат: • Требуемый выход в отчете Извлечение результирующих множеств Создать формат выхода запроса • Результат: • Требуемый выход в отчете – код должности и описание имеющейся должности • Формат отчета: c. Position. Code ©NIIT c. Description Извлечение результирующих множеств Урок 1 B / Слайд 19 из 53

Извлечение результирующих множеств Составить запрос • Выражение ORDER BY • ©NIIT Синтаксис SELECT список_столбцов Извлечение результирующих множеств Составить запрос • Выражение ORDER BY • ©NIIT Синтаксис SELECT список_столбцов FROM имя_таблицы [ORDER BY имя_столбца | номер_списка_выбора | выражение [ASC|DESC][, имя_столбца | номер_списка_выбора | выражение [ASC|DESC]. . . ] Извлечение результирующих множеств Урок 1 B / Слайд 20 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Результат: • Информация имеется в табл. Position Извлечение результирующих множеств Составить запрос (Продолжение) • Результат: • Информация имеется в табл. Position (должность) • Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT c. Position. Code, v. Description FROM Position ORDER BY v. Description ASC ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 21 из 53

Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer набрать запрос Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 22 из 53

Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • • ©NIIT Отображены требуемые столбцы Все строки отображены по v. Description в порядке возрастания Извлечение результирующих множеств Урок 1 B / Слайд 23 из 53

Извлечение результирующих множеств Отображение нескольких верхних строк Формулировка задачи По тестовым оценкам требуется краткий Извлечение результирующих множеств Отображение нескольких верхних строк Формулировка задачи По тестовым оценкам требуется краткий список из 3 первых внешних кандидатов для собеседования. тесты пройдены в марте 20010. Требуются все подробности об этих кандидатах. ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 24 из 53

Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать формат выхода запроса Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 25 из 53

Извлечение результирующих множеств Создать формат выхода запроса • Результат: • • ©NIIT Требуемый выход Извлечение результирующих множеств Создать формат выхода запроса • Результат: • • ©NIIT Требуемый выход запроса - особые подробности о 3 первых кандидатах Требуемые заголовки столбцов в отчете – имена атрибутов таблицы External. Candidate Извлечение результирующих множеств Урок 1 B / Слайд 26 из 53

Извлечение результирующих множеств Составить запрос • Ключевое слово TOP • ТОР ограничивает количество строк, Извлечение результирующих множеств Составить запрос • Ключевое слово TOP • ТОР ограничивает количество строк, возвращенных в результирующем множестве • Синтаксис SELECT [TOP n [PERCENT]] имя_столбца [, имя_столбца…] FROM имя_таблицы WHERE условия_поиска [ORDER BY [имя_столбца[, имя_столбца…] ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 27 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Результат: • • • Требуемая информация доступна Извлечение результирующих множеств Составить запрос (Продолжение) • Результат: • • • Требуемая информация доступна в таблице External. Candidate Требуются все подробности о кандидатах Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT TOP 3 * FROM External. Candidate WHERE d. Test. Date >= '3/1/10' AND d. Test. Date <= '3/31/10' ORDER BY si. Test. Score DESC ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 28 из 53

Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer набрать: Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 29 из 53

Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • Проверить, что: • • ©NIIT выход запроса соответствует требуемому результату строки - в порядке убывания оценок теста Извлечение результирующих множеств Урок 1 B / Слайд 30 из 53

Извлечение результирующих множеств Ключевое слово DISTINCT • • DISTINCT удаляет дублирующие строки из результирующего Извлечение результирующих множеств Ключевое слово DISTINCT • • DISTINCT удаляет дублирующие строки из результирующего множества Синтаксис SELECT [ALL|DISTINCT] имена_столбцов FROM имя_таблицы WHERE условие_поиска ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 31 из 53

Извлечение результирующих множеств Отображение обобщенных функций Формулировка задачи Требуется общее число газет, где опубликованы Извлечение результирующих множеств Отображение обобщенных функций Формулировка задачи Требуется общее число газет, где опубликованы объявления о приеме на работу ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 32 из 53

Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать Извлечение результирующих множеств Решение 1. 2. Составить запрос 3. Выполнить запрос 4. ©NIIT Создать формат выхода запроса Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 33 из 53

Извлечение результирующих множеств Создать формат выхода запроса Выход • Результат: • Требуется в отчете Извлечение результирующих множеств Создать формат выхода запроса Выход • Результат: • Требуется в отчете отобразить общее число газет, где опубликованы объявления о приеме на работу • • Применяемый заголовок “No. of Newspapers” Формат отчета: No. of Newspapers ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 34 из 53

Извлечение результирующих множеств Составить запрос • Обобщенные функции • • Свести значения в один Извлечение результирующих множеств Составить запрос • Обобщенные функции • • Свести значения в один или несколько столбцов одной таблицы и получить единственное значение Результат: • • • Информация имеется в табл. Newspaper (Газета). Применяемая обобщенная функция - COUNT Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT 'No. Of Newspapers’ = COUNT(c. Newspaper. Code) FROM Newspaper ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 35 из 53

Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие: • • ©NIIT В окне Query Analyzer набрать: Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 36 из 53

Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • ©NIIT Проверить отображение Извлечение результирующих множеств Проверить, что выход запроса соответствует требуемым результатам • ©NIIT Проверить отображение верного числа газет Извлечение результирующих множеств Урок 1 B / Слайд 37 из 53

Извлечение результирующих множеств Группировка результирующих множеств • Для группировки результирующих множеств применяются выражения : Извлечение результирующих множеств Группировка результирующих множеств • Для группировки результирующих множеств применяются выражения : • • • Оператор CUBE: Создает обобщенные строки в результирующем множеств • ©NIIT GROUP BY: Сводит результирующее множество в группы, определенные в запросе, по обобщенным функциям COMPUTE и COMPUTE BY: Выражение COMPUTE с командой SELECT генерирует суммарные строки по обобщенным функциям в результатах запроса. Выражение COMPUTE BY далее сводит результирующее множество по столбцам GROUP BY ALL: Ключевое слово ALL выражения GROUP BY отображает все группы, включая исключенные из выражения WHERE Извлечение результирующих множеств Урок 1 B / Слайд 38 из 53

Извлечение результирующих множеств Создание итогового отчета Формулировка задачи Эффективность объявлений о приеме на работу Извлечение результирующих множеств Создание итогового отчета Формулировка задачи Эффективность объявлений о приеме на работу в различных газетах должна быть проанализирована. Сначала требуется число объявлений в каждой газете в следующем формате: Newspaper Code ©NIIT Newspaper Code Извлечение результирующих множеств Урок 1 B / Слайд 39 из 53

Извлечение результирующих множеств Решение 1. 2. Выполнить запрос 3. ©NIIT Составить запрос Проверить, что Извлечение результирующих множеств Решение 1. 2. Выполнить запрос 3. ©NIIT Составить запрос Проверить, что выход запроса соответствует требуемым результатам Извлечение результирующих множеств Урок 1 B / Слайд 40 из 53

Извлечение результирующих множеств Составить запрос • • ©NIIT Выражение GROUP BY Синтаксис SELECT список_столбцов Извлечение результирующих множеств Составить запрос • • ©NIIT Выражение GROUP BY Синтаксис SELECT список_столбцов FROM имя_таблицы WHERE условие GROUP BY [ALL] выражение [, выражение] [HAVING условие_поиска] Извлечение результирующих множеств Урок 1 B / Слайд 41 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Ключевое слово HAVING в запросе SELECT можно Извлечение результирующих множеств Составить запрос (Продолжение) • Ключевое слово HAVING в запросе SELECT можно применить для выбора строк из промежуточного результирующего множества • Результат: • • • ©NIIT Информация имеется в табл. News. Ad (Объявления в газетах). Требуется количество объявлений в каждой газете Выход должен группироваться в виде газеты, поэтому приходится применять GROUP BY Извлечение результирующих множеств Урок 1 B / Слайд 42 из 53

Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен Извлечение результирующих множеств Составить запрос (Продолжение) • Т. е. запрос, использующий команду SELECT, должен быть следующим: SELECT 'Newspaper Code' = c. Newspaper. Code, 'No. Of Advts. Placed' COUNT(c. Newspaper. Code) = FROM News. Ad GROUP BY c. Newspaper. Code ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 43 из 53

Извлечение результирующих множеств Выполнить запрос • Действие • • ©NIIT В окне Query Analyzer Извлечение результирующих множеств Выполнить запрос • Действие • • ©NIIT В окне Query Analyzer набрать запрос Выполнить запрос Извлечение результирующих множеств Урок 1 B / Слайд 44 из 53

Извлечение результирующих множеств Проверить, что выход запроса – в следующем формате: • Проверить, что: Извлечение результирующих множеств Проверить, что выход запроса – в следующем формате: • Проверить, что: • • ©NIIT Отображены требуемые столбцы количество объявлений в каждой газете правильное Извлечение результирующих множеств Урок 1 B / Слайд 45 из 53

Извлечение результирующих множеств Оператор CUBE • В результирующее множество вводятся обобщенные строки, если в Извлечение результирующих множеств Оператор CUBE • В результирующее множество вводятся обобщенные строки, если в выражении GROUP BY есть оператор CUBE • CUBE работает со всеми обобщенными функциями (AVG, SUM, MAX, MIN, COUNT и т. д. ) • Пример SELECT Type, Pub_id, 'Sum' = sum(Ytd_Sales) FROM Titles GROUP BY Type, Pub_id with cube ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 46 из 53

Извлечение результирующих множеств GROUP BY ALL • Ключевое слово ALL выражения GROUP BY отображает Извлечение результирующих множеств GROUP BY ALL • Ключевое слово ALL выражения GROUP BY отображает все группы, включая исключенные из выражения WHERE • Пример SELECT Type, Advance = SUM (Advance) FROM Titles WHERE Type IN ('business', 'mod_cook', 'trad_cook') GROUP BY ALL Type ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 47 из 53

Извлечение результирующих множеств COMPUTE и COMPUTE BY • Выражение COMPUTE в команде SELECT генерирует Извлечение результирующих множеств COMPUTE и COMPUTE BY • Выражение COMPUTE в команде SELECT генерирует суммарные строки по обобщенным функциям в результатах запроса • COMPUTE BY может применяться для вычисления суммарных значений результирующего множества по группе данных • Синтаксис SELECT список_столбцов FROM имя_таблицы ORDER BY имя_столбца COMPUTE обобщенная_функция (имя_столбца) [, обобщенная_функция (имя_столбца). . . ] [, имя_столбца…] [BY имя_столбца [, имя_столбца]. . . ] ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 48 из 53

Извлечение результирующих множеств Выводы Из этого урока Вы узнали, что: • SQL Server дает Извлечение результирующих множеств Выводы Из этого урока Вы узнали, что: • SQL Server дает метод соответствия образцу для строковых выражений, применяя ключевое слово LIKE с подстаночными знаками • LIKE выбирает те строки таблицы, которые соответствуют заданной части символьной строки. • В терминах SQL Server, NULL – неизвестное значение или значение, для которого нет данных • Значения NULL можно извлекать из таблицы, применяя ключевое слово IS NULL в операторе WHERE ©NIIT Извлечение результирующих множеств Урок 1 B / Слайд 49 из 53

Извлечение результирующих множеств Выводы (продолжение) • • Выражение ТОР ограничивает количество строк, возвращенных в Извлечение результирующих множеств Выводы (продолжение) • • Выражение ТОР ограничивает количество строк, возвращенных в результирующем множестве • Выражение GROUP BY организует итоговое результирующее множество в группы, определенные в таблице с помощью обобщенных функций • Выражение HAVING ограничивает результирующее множество для получения данных по условию • ©NIIT Ключевое слово DISTINCT в команде SELECT применяется для исключения одинаковых строк При использовании оператора CUBE с оператором GROUP BY, в результирующее множество вводятся обобщенные строки Извлечение результирующих множеств Урок 1 B / Слайд 50 из 53

Извлечение результирующих множеств Выводы (продолжение) • • SQL Server предусматривает выражение COMPUTE с командой Извлечение результирующих множеств Выводы (продолжение) • • SQL Server предусматривает выражение COMPUTE с командой SELECT для получения суммарных строк по обобщенным функциям в результатах запроса • ©NIIT Ключевое слово ALL выражения GROUP BY отображает все группы, включая исключенные из выражения WHERE COMPUTE BY может применяться для вычисления суммарных значений результирующего множества по группе данных Извлечение результирующих множеств Урок 1 B / Слайд 51 из 53