Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум по ORACLE 2004 года.doc
Скачиваний:
28
Добавлен:
03.05.2015
Размер:
466.43 Кб
Скачать

Азазель 40 5

Ва-банк 42 3

Ледниковый период 40

7 строк выбрано.

Сортировка данных по умолчанию

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

  • Вывод числовых значений производится от меньших к большим - например, 1 - 999.

  • Вывод дат начинается с более ранних - например, 01 -ЯНВ-92 предшествует 01-ЯНВ-95.

  • Вывод символьных значений производится в алфавитном порядке - например, от А до Z.

  • Неопределенные значения в Oracle при сортировке по возрастанию выводятся последними, а при сортировке по убыванию - первыми.

Изменение порядка сортировки, используемого по умолчанию

Порядок сортировки, принятый по умолчанию, меняется на противоположный с помощью слова DESC после имени столбца в предложении ORDER BY.

Пример.

Вывод из таблицы Film названия фильмов, год выпуска и стоимости проката. Результат сортируется таким образом, чтобы фильмы выпущенные последними, возглавляли список.

SQL> select namef,god_vip, stoimost_prok

2 from film

3 order by god_vip desc;

NAMEF GOD_VIP STOIMOST_PROK

------------------------- -------------- ------------------------

Куклы 40

Ледниковый период 40

Ва-банк 02.03.85 42

7 Строк выбрано.

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

В предложении ORDER BY можно указать псевдоним столбца.

Сортировка по позиции

Он особенно полезен при сортировке по длинному выражению. Вместо повторного ввода выражения можно указать его позицию в списке SELECT.

SQL> select filmid,namef,god_vip

2 from film

3 order by 2;

7 строк выбрано.

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

Пример.

Вывод кодов, фамилии клиентов и их телефонных номеров. Результат сортируется по фамилиям в алфавитном порядке, а телефоны - в порядке убывания их кода.

SQL> Select klientid, fio, phone

2 from klient

3 order by fio, klientid desc;

KLIENTID FIO PHONE

---------- ------------------------- -----------

4 Иванов И.Н. 1235478

1 Иванов И.Н. 9005363

2 Петров Н.О. 7854458

3 Сидоров О.Г. 4455478

Ограничение количества строк с помощью предложения WHERE.

Синтаксис

WHERE выражение оператор выражение

Пример условий WHERE

…WHERE filmid=2

Строки символов и даты в предложении WHERE должны быть заключены в апострофы (' '). Числовые константы в апострофы не заключаются.

Пример.

Запрос для вывода клиентов, их кодов, фамилий и телефонов с фамилией "Иванов И.Н.". В символьных строках различаются символы верхнего и нижнего регистров. Поэтому для совпадения фамилия должна быть написана строчными буквами и начинаться с заглавной буквы.

SQL> Select klientid, fio, phone

2 from klient

3 where fio='Иванов И.Н.';

KLIENTID FIO PHONE

---------- ------------------------- ----------------