Ограничения на количество выбираемых строк

Содержание

Слайд 2

А.М. Гудов Предложение ORDER BY ASC – сортировка по возрастанию, (используется

А.М. Гудов

Предложение ORDER BY

ASC – сортировка по возрастанию, (используется по умолчанию).
DESC

– сортировка по убыванию.
Предложение ORDER BY является в команде SELECT последним.

SQL> SELECT last_name, dept_id, start_date
2 FROM s_emp
3 ORDER BY last_name;

Используется для сортировки строк.

Слайд 3

А.М. Гудов Предложение ORDER BY По умолчанию - сортировка возрастающем порядке.

А.М. Гудов

Предложение ORDER BY

По умолчанию - сортировка возрастающем порядке.
Для сортировки в

обратном порядке используется слово DESC.
Возможна сортировка по выражениям или псевдонимам.

SQL> SELECT last_name EMPLOYEE, start_date
2 FROM s_emp
3 ORDER BY EMPLOYEE DESC;

Место неопределенных значений:
При сортировке по возрастанию - последние.
При сортировке по убыванию - первые.

Слайд 4

А.М. Гудов Сортировка по нескольким столбцам Сортировка по позициям для экономии

А.М. Гудов

Сортировка по нескольким столбцам

Сортировка по позициям для экономии времени.

SQL>

SELECT last_name, dept_id, salary
2 FROM s_emp
3 ORDER BY dept_id, salary DESC;

SQL> SELECT last_name, salary * 12
2 FROM s_emp
3 ORDER BY 2;

Сортировка по нескольким столбцам

Последовательность сортировки определяется порядком столбцов в списке ORDER BY.
Сортировать можно и по столбцам, не входящим в список SELECT.

Слайд 5

А.М. Гудов Ограничение количества строк Количество выбираемых строк можно ограничить с

А.М. Гудов

Ограничение количества строк

Количество выбираемых строк можно ограничить с помощью предложением

WHERE.
Предложение WHERE следует за предложением FROM.
Условия состоят из:
имен столбцов, выражений, констант;
операторов сравнения;
литералов.

SQL> SELECT last_name, dept_id, salary
2 FROM s_emp
3 WHERE dept_id = 42;

Слайд 6

А.М. Гудов Строки символов и даты Строки символов и даты заключаются

А.М. Гудов

Строки символов и даты

Строки символов и даты заключаются в апострофы.
Числовые

значения в апострофы не заключаются.
В символьных значениях различаются символы верхнего и нижнего регистров.
Формат даты по умолчанию - “DD-MON-YY” (число-месяц-год).

SQL> SELECT first_name, last_name, title
2 FROM s_emp
3 WHERE last_name = 'Magee';

Слайд 7

А.М. Гудов Операторы сравнения и логические Логические операторы сравнения = >

А.М. Гудов

Операторы сравнения и логические

Логические операторы сравнения
= > >= < <=
Операторы

сравнения SQL
BETWEEN ... AND...
IN(list)
LIKE
IS NULL
Логические операторы
AND
OR
NOT
Слайд 8

А.М. Гудов Отрицание Логические операторы != ^= Операторы SQL NOT BETWEEN

А.М. Гудов

Отрицание

Логические операторы
!= <> ^=
Операторы SQL
NOT BETWEEN
NOT IN
NOT LIKE
IS NOT NULL

Иногда

проще исключить строки, которые явно не требуются:
Слайд 9

А.М. Гудов Операторы BETWEEN и IN Оператор BETWEEN используется для проверки

А.М. Гудов

Операторы BETWEEN и IN

Оператор BETWEEN используется для проверки вхождения значения

в интервал значений (включая границы интервала).

SQL> SELECT id, name, region_id
2 FROM s_dept
3 WHERE region_id IN (1,3);

SQL> SELECT first_name, last_name, start_date
2 FROM s_emp
3 WHERE start_date BETWEEN '09-may-91'
4 AND '17-jun-91';

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

Слайд 10

А.М. Гудов Оператор LIKE Используется для поиска строковых значений с помощью

А.М. Гудов

Оператор LIKE

Используется для поиска строковых значений с помощью метасимволов (wildcards).
Условия

для поиска могут содержать символьные литералы или числа:
"%" означает отсутствие или некоторое количество символов;
"_" означает один символ.

SQL> SELECT last_name
2 FROM s_emp
3 WHERE last_name LIKE 'M%';

Слайд 11

А.М. Гудов Оператор LIKE (продолжение) Может использоваться в качестве быстрого эквивалента

А.М. Гудов

Оператор LIKE (продолжение)

Может использоваться в качестве быстрого эквивалента некоторых операций

BETWEEN.
В критерии поиска символы можно сочетать.
Поиск символов "%" и "_" требует использования идентификатора ESCAPE.

SQL> SELECT last_name
2 FROM s_emp
3 WHERE last_name LIKE '_a%';

SQL> SELECT last_name, start_date
2 FROM s_emp
3 WHERE start_date LIKE '%91';

Слайд 12

А.М. Гудов Оператор IS NULL Неопределенные значения проверяются с помощью оператора

А.М. Гудов

Оператор IS NULL

Неопределенные значения проверяются с помощью оператора IS NULL.
Пользоваться

оператором “=“ не следует.

SQL> SELECT id, name, credit_rating
2 FROM s_customer
3 WHERE sales_rep_id IS NULL;

Слайд 13

А.М. Гудов Выборка по нескольким условиям Использование сложных критериев. Сочетание условий

А.М. Гудов

Выборка по нескольким условиям

Использование сложных критериев.
Сочетание условий с помощью

операторов AND и OR.
AND требует выполнения обоих условий.

OR требует выполнения хотя бы одного из условий.

SQL> SELECT last_name, salary, dept_id, title
2 FROM s_emp
3 WHERE dept_id = 41
4 AND title = 'Stock Clerk';

SQL> SELECT last_name, salary, dept_id, title
2 FROM s_emp
3 WHERE dept_id = 41
4 OR title = 'Stock Clerk';

Слайд 14

А.М. Гудов Порядок выполнения операций Порядок вычисления Оператор 1 Все операторы

А.М. Гудов

Порядок выполнения операций

Порядок вычисления Оператор
1 Все операторы сравнения
2 AND
3 OR

Стандартный порядок

выполнения операций отменяется скобками.
Слайд 15

А.М. Гудов Порядок выполнения операций (примеры) Вывод информаци о служащих отдела

А.М. Гудов

Порядок выполнения операций (примеры)

Вывод информаци о служащих отдела 44 с

зарплатой 1000 и более и о всех служащих отдела 42.

SQL> SELECT last_name, salary, dept_id
2 FROM s_emp
3 WHERE salary >= 1000
4 AND dept_id = 44
5 OR dept_id = 42;

SQL> SELECT last_name, salary, dept_id
2 FROM s_emp
3 WHERE salary >= 1000
4 AND (dept_id = 44
5 OR dept_id = 42);

Вывод информации о всех служащих отделов 44 и 42, зарплата которых составляет 1000 и более.

Слайд 16

А.М. Гудов Заключение SELECT [DISTINCT] {*, column [alias], ...} FROM table

А.М. Гудов

Заключение

SELECT [DISTINCT] {*, column [alias], ...}
FROM table
[WHERE condition(s)]
[ORDER BY {column, expr, alias} [ASC|DESC]];

Операторы,

влияющие на ограничения выбираемых по запросу строк:
WHERE
ORDER BY
Синтаксис оператора выборки данных:
Слайд 17

А.М. Гудов Практическое занятие (обзор) Выборка данных и изменение порядка вывода

А.М. Гудов

Практическое занятие (обзор)

Выборка данных и изменение порядка вывода строк
Ограничение количества

строк с помощью предложения WHERE
Использование метода обозначения псевдонимов столбцов двойными кавычками