Читайте также:
|
|
Пропозиція ORDER BY (необов'язкове) застосовується для сортування результуючого набору даних по одній або кільком колонкам. Для визначення порядку сортування використовуються ключові слова ASC (за зростанням) або DESC (за спаданням). За замовчуванням дані сортуються за зростанням. Синтаксис пропозиції ORDER BY має вигляд:
ORDER BY column1 [{ASC | DESC}] [, column2 [{ASC | DESC}] …
Наприклад, для сортування співробітників на прізвище і потім по імені слід використовувати наступний SQL-запит:
SELECT LastName, FirstName, Title
FROM Employees
ORDER BY LastName, FirstName
Якщо сортування даних потрібно в порядку убування (наприклад, потрібно список продуктів в порядку убування цін), використовується ключове слово DESC:
SELECT ProductName, UnitPrice
FROM Products
ORDER BY UnitPrice DESC
WHERE
Для фільтрації результатів, що повертаються оператором SELECT, можна використовувати WHERE, синтаксис якого має вигляд:
WHERE expression1 [{AND | OR} expression2 [...]]
Наприклад, замість отримання повного списку продуктів можна обмежитися лише тими з них, у яких значення поля CategoryID одно 4:
SELECT *
FROM Products
WHERE CategoryID = 4
У пропозиції WHERE можна використовувати різні вирази, наприклад:
SELECT *
FROM Products
WHERE CategoryID = 2 AND SupplierID > 10
або:
SELECT ProductName, UnitPrice
FROM Products
WHERE CategoryID = 3 OR UnitPrice < 50
або:
SELECT ProductName, UnitPrice
FROM Products
WHERE Discontinued IS NOT NULL
Вираз 'IS NOT NULL' означає, що відповідна колонка результуючого набору даних не може містити порожніх значень. У пропозиції WHERE можна використовувати один з шести операторів відносин (<, <=, <>, =, >, >=), визначених в SQL.
Крім перерахованих вище простих операторів порівняння, можна використовувати і спеціальні оператори порівняння:
- BETWEEN - застосовується при перевірці знаходження значення усередині заданого інтервалу (включаючи його межі);
- IN - застосовується для перевірки наявності значення в списку (множині даних);
- LIKE - застосовується при перевірці відповідності значення заданої масці (шаблону).
Наведемо кілька прикладів застосування цих операторів. Для зіставлення даних з маскою застосовується ключове слово LIKE:
SELECT CompanyName, ContactName
FROM Customers
WHERE CompanyName LIKE 'M%'
У даній масці символ '%' (відсоток) замінює будь-яку послідовність символів, а символ '_' (підкреслення) - один будь-який символ. Той же самий результат може бути отриманий таким способом:
SELECTCompanyName, ContactName
FROM Customers
WHERE CompanyName BETWEEN 'M' AND 'N'
В останньому прикладі ми можемо розширити область пошуку. Зокрема, при пошуку компаній, що починаються з букв від A до C, можна виконати наступний оператор SELECT:
SELECT CompanyName, ContactName
FROM Customers
WHERE CompanyName BETWEEN 'A' AND 'D'
Використовуючи оператор LIKE, ми можемо звузити діапазон пошуку, застосувавши більш складну маску для порівняння. Наприклад, щоб знайти компанії, які містять у своїй назві підрядок bl, можна застосувати наступний запит:
SELECT CompanyName, ContactName
FROM Customers
WHERE CompanyName LIKE '% bl%'
Маска '% bl%' показує, що до і після шуканого підрядка може бути будь-яка кількість довільних символів.
Використовуючи оператор IN, можна задати список значень, в якому має міститися значення поля:
SELECT CompanyName, ContactName
FROM Customers
WHERE CustomerID IN('ALFKI', 'BERGS', 'VINET')
Контрольні запитання
1. Ключові слова all, distinct
2. Призначення та особливості використання where.
3. Призначення та особливості використання group by.
4. Призначення та особливості використання having.
5. Призначення та особливості використання order by.
6. Призначення та особливості використання between... and.
7. Призначення та особливості використання like.
8. Призначення та особливості використання in.
Дата добавления: 2015-04-26; просмотров: 15 | Поможем написать вашу работу | Нарушение авторских прав |