Головна

Оператор вибору SELECT

  1.  Classical theories of elite. Selection systems in elite
  2.  Examining and selecting
  3.  IV. РЕГІОНАЛЬНИЙ ОПЕРАТОР
  4.  Primaries: Selecting the Candidates
  5.  Select the statement that best expresses the main idea of ??the text.
  6.  Study the advertisements on the following pages. Select suitable jobs for which these applicants could apply.
  7.  Text 6.2. Natural Selection

Вибірка даних здійснюється за допомогою оператора SELECT, який є самим часто використовуваним оператором мови SQL. Синтаксис оператора SELECT має наступний вигляд:

SELECT [ALL / DISTINCT] <список атрибутів> / *

FROM <список таблиць>

[WHERE <умова вибірки>]

[ORDER BY <список атрибутів>]

[GROUP BY <список атрибутів>]

[HAVING <умова>]

[UNION <вираз з оператором SELECT>]

У квадратних дужках вказуються елементи, які можуть в запиті відсутні.

Ключове слово ALL означає, що результатом будуть всі рядки, що задовольняють умові запиту, в тому числі і однакові рядки. DISTINCT означає, що в результуючий набір не включаються однакові рядки. Далі йде список атрибутів вихідної таблиці, які будуть включені в таблицю-результат. Символ * означає, що в таблицю-результат включаються всі атрибути вихідної таблиці.

Обов'язковою ключовим словом є слово FROM, за ним слідують імена таблиць, до яких здійснюється запит.

В пропозиції з ключовим словом WHEREзадаються умови вибірки рядків таблиці. У таблицю-результат включаються тільки ті рядки, для яких умова, вказане в пропозиції WHERE, приймає значення істина.

Ключове слово ORDER BY сортує рядки таблиці-результату за вказаною списку атрибутів. Сортування може виконуватися по декількох полях, в цьому випадку вони перераховуються за ключовим словом ORDER BY через кому. Спосіб сортування задається ключовим словом, вказуються в рамках параметра ORDER BY слідом за назвою поля, по якому виконується сортування. За замовчуванням реалізується сортування за зростанням. Явно вона задається ключовим словом ASC. Для виконання сортування в зворотному порядку необхідно після імені поля, по якому вона виконується, вказати ключове слово DESC.

В пропозиції з ключовим словом GROUP BY задається список атрибутів угруповання. Для запитів, що містять секцію GROUP BY існує важливе обмеження: такі запити можуть включати в якості результату стовпці, по яким проводиться групування. При наявності в операторі SELECT фрази GROUP BY кожен елемент списку в реченні SELECT повинен мати єдине значення для всієї групи. Більш того, пропозиція SELECT може включати тільки такі типи елементів: імена полів, підсумкові функції, константи і вирази, що включають комбінації перерахованих вище елементів.

Всі імена полів, наведені в списку пропозиції SELECT, повинні бути присутніми і у фразі GROUP BY - за винятком випадків, коли ім'я стовпця використовується в підсумковій функції. Зворотне правило не є справедливим - у фразі GROUP BY можуть бути імена стовпців, відсутні в списку пропозиції SELECT.

Якщо спільно з GROUP BY використовується пропозицію WHERE, то воно обробляється першим, а гуртування піддаються тільки ті рядки, які задовольняють умові пошуку.

Стандартом SQL визначено, що при проведенні групування все відсутні значення розглядаються як рівні. Якщо два рядки таблиці в одному і тому ж группіруемих стовпці містять значення NULL і ідентичні значення у всіх інших непустих группіруемих шпальтах, вони поміщаються в одну і ту ж групу.

В реченні HAVING задаються умови, що накладаються на кожну групу.

Поряд з операторами порівняння і логічними операторами для складання умов в мові SQL (через специфіку області застосування) існують ряд спеціальних операторів, які, як правило, не мають аналогів в інших мовах. Ось ці оператори:

IN - входження в певну множину значень;

BETWEEN - входження в деякий діапазон значень;

LIKE - перевірка на збіг із зразком;

IS NULL - перевірка на невизначене значення.

оператор IN використовується для перевірки входження в певну множину значень.

оператор LIKE застосуємо виключно до символьних полях і дозволяє встановлювати, чи відповідає значення поля зразком. Зразок може містити спеціальні символи:

§ % - Замість цього символу може бути підставлений будь-яку кількість довільних символів.

§ _ замінює один символ рядка.

§ [] - Замість символу рядка буде підставлений один з можливих символів, зазначений в цих обмежниках.

§ [^] - Замість відповідного символу рядка будуть підставлені всі символи, крім зазначених у обмежниках.

оператор BETWEEN використовується для пошуку значення всередині деякого інтервалу, що визначається своїми мінімальним і максимальним значеннями. При цьому зазначені значення включаються в умова пошуку.

Оператор IS NULL використовується для порівняння поточного значення зі значенням NULL - спеціальним значенням, що вказує на відсутність будь-якого значення. NULL - це не те ж саме, що знак пробілу (пробіл - допустимий символ) або нуль (0 - допустиме число). NULL відрізняється і від рядка нульової довжини (порожній рядки).

Обробка елементів оператора select виконується в наступній послідовності:

1) обробляється from - визначаються імена використовуваних таблиць.

2) where - виконується фільтрація рядків об'єкта відповідно до умов.

3) group by (якщо є) - утворюються групи рядків з однаковим значенням в зазначеному стовпці.

4) having - фільтруються групи рядків об'єктів відповідно до умовою.

5) select - які стовпці повинні бути в вихідних даних.

6) Order by - сортування.

 



 Основні команди мови DML |  Застосування агрегатних функцій і вкладених запитів в операторі вибору

 порівняння архітектур |  Поняття СУБД. Функції СУБД. |  Розподілені СУБД (частини СУБД можуть розміщуватися на двох і більше комп'ютерах). |  При розробці БД можна виділити наступні етапи роботи. |  Обмеження не-Null |  первинні ключі |  зовнішні ключі |  Запис SQL-операторів |  Типи даних мови SQL, певні стандартом |  Оператори маніпулювання даними |

© um.co.ua - учбові матеріали та реферати