Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних




Скачати 52.87 Kb.
НазваЛекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних
Дата конвертації14.04.2013
Розмір52.87 Kb.
ТипЛекція
uchni.com.ua > Інформатика > Лекція
Лекція №14

Тема: Оператор SELECT, як уніфікований інструмент вибірки даних.
План

  1. Вибірка рядків (конструкція WHERE).

  2. Сортування результатів (конструкція ORDER BY).

  3. Агрегуючі функції мови SQL.


Вибірка всіх рядків

Вибірка рядків (конструкція WHERE)

Дуже часто вимагається тим або іншим чином обмежити набір рядків, що поміщаються в результуючу таблицю запиту. Це досягається за допомогою вказівки в запиті конструкції WHERE. Вона складається з ключового слова WHERE, за яким слідує перелік умов пошуку, визначаючих ті рядки, які повинні бути вибрані при виконанні запиту. Існує п'ять основних типів умов пошуку (або предикатів, якщо користуватися термінологією ISO).

• Порівняння. Порівнюються результати обчислення одного виразу з результатами обчислення іншого виразу.

• Діапазон. Перевіряється, чи потрапляє результат обчислення виразу в заданий діапазон значень.

• Приналежність до множини. Перевіряється, чи належить результат обчислення виразу до заданої безлічі значень.

• Відповідність шаблону. Перевіряється, чи відповідає деяке рядкове значення заданому шаблону.

• Значення NULL. Перевіряється, чи містить даний стовпець NULL (невизначене значення).

У мові SQL можна використовувати прості операції порівняння, перераховані в табл. 1.

Таблиця 1. Операції порівняння

^ Знак операції

Призначення

Рівно

=

Не рівно (стандарт ISO)

<>

Не рівно (використовується в деяких діалектах)

!=

Менше

<

Більше

>

Менше або рівно

<=

Більше або рівно

>=

Складніші предикати можуть бути побудовані за допомогою логічних операцій AND, OR або NOT, а також за допомогою дужок, використовуваних для визначення порядку обчислення виразу (якщо це необхідне або бажане). Обчислення виразів в умовах виконується за наступними правилами.

• Вираз обчислюється зліва направо.

• Першими обчислюються підвирази в дужках.

• Операції NOT виконуються перед операціями AND і OR.

• Операції AND виконуються перед операціями OR.

Для усунення будь-якої можливої неоднозначності рекомендується використовувати круглі дужки.

У мові SQL існують два спеціальні символи шаблону, використовувані при перевірці символьних значень.

• %. Символ відсотка представляє будь-яку послідовність з нуля або більш символів (тому часто іменується також підстановлювальним символом).

• _. Символ підкреслення представляє будь-який окремий символ.

^ Сортування результатів (конструкція ORDER BY)

У загальному випадку рядка в результуючій таблиці запиту SQL не впорядковані яким-небудь певним чином (хоча в деяких СУБД може бути передбачене застосування за умовчанням певного способу впорядкування, наприклад по первинному ключу). Проте їх можна відсортувати належним чином, для чого в оператора SELECT поміщається конструкція ORDER BY. Конструкція ORDER BY включає список розділених комами ідентифікаторів стовпців, по яких вимагається упорядкувати результуючу таблицю запиту. Ідентифікатор стовпця може бути або його ім'ям, або номером, який позначає елемент списку SELECT відповідно до його позиції в цьому списку. Найлівіший елемент списку має номер 1, наступний — 2 і т.д. Номери стовпців можуть використовуватися в тих випадках, коли стовпці, по яких слід упорядкувати результат, є обчислюваними, а конструкція AS з вказівкою імені цього стовпця в операторі SELECT відсутня. Конструкція ORDER BY дозволяє упорядкувати вибрані записи у порядку зростання (ASC) або убування (DESC) значень будь-якого стовпця або комбінації стовпців, незалежно від того, присутні ці стовпці в таблиці результатів чи ні.

У конструкції ORDER BY може бути вказане і більше одного елементу. Старший ключ сортування визначає загальну впорядкованість рядків результуючої таблиці. У попередньому прикладі старшим ключем сортування є стовпець salary. Якщо значення старшого ключа сортування у всіх рядках результуючої таблиці є унікальними, немає необхідності використовувати додаткові ключі сортування. Проте, якщо значення старшого ключа не унікальні, в результуючій таблиці присутні декілька рядків з одним і тим же значенням старшого ключа сортування. В цьому випадку може виявитися бажаним упорядкувати рядки з одним і тим же значенням старшого ключа по якому-небудь додатковому ключу сортування. Якщо в конструкції ORDER BY присутні другою і подальші елементи, то такі елементи називають молодшими ключами сортування.

У стандарті ISO вказане, що значення NULL в стовпцях або виразах, для сортування яких застосовується конструкція ORDER BY, повинні розглядати або як менші, або як великі по величині, ніж всі непорожні значення.

^ Використовування агрегуючих функцій мови SQL

Стандарт ISO містить визначення наступних п'яти агрегуючих функції:

• COUNT — повертає кількість значень у вказаному стовпці;

• SUM — повертає суму значень у вказаному стовпці;

• AVG — повертає усереднене значення у вказаному стовпці;

• MIN — повертає мінімальне значення у вказаному стовпці;

• МАХ — повертає максимальне значення у вказаному стовпці.

Всі ці функції оперують із значеннями в єдиному стовпці таблиці і повертають єдине значення. Функції COUNT, MIN і МАХ застосовні як до числових, так і до нечислових полів, тоді як функції SUM і AVG можуть використовуватися тільки у разі числових полів. За винятком COUNT (*), при обчисленні результатів будь-яких функцій спочатку виключаються всі порожні значення, після чого необхідна операція застосовується тільки до непорожніх значень стовпця, що залишилися. Варіант COUNT (*) є особливим випадком використовування функції COUNT — його призначення полягає в підрахунку всіх рядків в таблиці, незалежно від того, містяться там порожні, повторюються або будь-які інші значення.

Якщо до застосування агрегуючої функції необхідно виключити значення, що повторюються, слід перед ім'ям стовпця у визначенні функції помітити ключове слово DISTINCT. Стандарт ISO допускає використовування ключового слова ALL з метою явної вказівки того, що виключення значень, що повторюються, не потрібне, хоча це ключове слово мається на увазі за умовчанням, якщо ніякі інші визначники не задані. Ключове слово DISTINCT не має сенсу для функцій MIN і МАХ. Проте його використовування може робити вплив на результати виконання функцій SUM і AVG, тому слід наперед обдумати, чи повинне воно бути присутнім у кожному конкретному випадку. Крім того, ключове слово DISTINCT в кожному запиті може бути вказане не більш один раз.

Слід зазначити, що агрегуючі функції можуть використовуватися тільки в списку вибірки SELECT і в конструкції HAVING. У всіх інших випадках застосування цих функцій неприпустимо. Якщо список вибірки SELECT містить агрегуючу функцію, а в тексті запиту відсутня конструкція GROUP BY, що забезпечує об'єднання даних в групи, то жоден з елементів списку вибірки SELECT не може включати яких-небудь посилань на стовпці, за винятком випадку, коли цей стовпець використовується як параметр агрегуючої функції.
Література:

Томас Конноли, Каролин Бегг, Анна Страчан. Базы данных: проектирование, реализация и сопровождение. Теория и практика, 2-е изд. – М.: Издательский дом «Вильямс», 2000. [1], 57,66, 84,169
Контрольні запитання:

  1. Які основні типи умов пошуку існують?

  2. По яким правилам виконується обчислення виразів в умовах?

  3. Які визначення агрегуючих функції містить стандарт ISO?

  4. Правила використання агрегуючих функцій.

  5. Які дії дозволяє виконати конструкція ORDER BY?







Схожі:

Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №15 Тема: Оператор select, як уніфікований інструмент вибірки...
При використовуванні в операторі select конструкції group by кожен елемент списку в списку вибірки select повинен мати єдине значення...
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconТема: Обчислювальний процес, що розгалужується, з різними логічними...

Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №23 Тема: Банки даних
Банком даних (БнД) називають систему спеціальним чином організованих баз даних, програмних, технічних, мовних І організаційно методичних...
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №6 Тема: Цілісність реляційних даних
Допущення у будь-який момент часу база даних містить певну конфігурацію значень даних. Вона відображає дійсність, тобто є моделлю...
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №17 Тема: Проектування багатовимірних Баз Даних
Проектування бази даних. Процес створення проекту бази даних, призначеної для підтримки функціонування підприємства І сприяючої досягненню...
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconТема. Введення І виведення даних, оператор присвоювання
Дано довжини ребер a, b, c прямокутного паралелепіпеда. Знайти його об’єм V=a·b·c І площу поверхні S=2·(a·b+b·c+a·c)
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №8 Тема: Мета та технологія проектування
Мета Нормалізація відносин бази даних для вирішення проблем, пов'язаних з оновленням І видаленням даних
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №2 тема: судді І їхні обов'язки мета
Суддями є Старший суддя І суддя, яким допомагають Секундометрист, Секретар, Помічник секретаря І оператор 30 секунд
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №1 Тема: Бази даних як основа інформаційного простору, структуризація інформації
Дані, що зберігаються в базі, мають певну логічну структуру, тобто представлені деякою моделлю, підтримуваною субд. До числа найважливіших...
Лекція №14 Тема: Оператор select, як уніфікований інструмент вибірки даних iconЛекція №24 Тема: Специфіка експлуатації клієнт серверних систем, глобальні мережі
Системи баз даних, засновані на архітектурі "клієнт-сервер", є наближенням до розподілених систем баз даних, звичайно, істотно спрощеним...
Додайте кнопку на своєму сайті:
Школьные материалы


База даних захищена авторським правом © 2014
звернутися до адміністрації
uchni.com.ua
Головна сторінка