Сортировка данных
- Сортировка выбранных данных
- Сортировка по нескольким столбцам
- Сортировка по положению столбца
- Указание направления сортировки
Указание направления сортировки
Сортировка данных не ограничена порядком по возрастанию (от А до Я). Несмотря на то что этот порядок является порядком по умолчанию, в предложении ORDER BY также можно использовать порядок по убыванию (от Я до А). Для этого необходимо указать ключевое слово DESC.
В следующем примере продукция сортируется по цене в убывающем порядке (вначале идут самые дорогие товары).
FROM Products
ORDER BY prod_price DESC;
prod id prod_price prod_name
--------- ------------ ------------------
BR03 11.9900 18 inch teddy bear
RYLOl 9.4900 King doll
RYL02 9.4900 Queen doll
BR02 8.9900 12 inch teddy bear
BROl 5.9900 8 inch teddy bear
RGANOl 4.9900 Raggedy Ann
BNBGOl 3.4900 Fish bean bag toy
BNBG02 3.4900 Bird bean bag toy
BNBG03 3.4900 Rabbit bean bag toy
Но что, если производится сортировка по нескольким столбцам? В следующем примере продукция сортируется по цене в убывающем порядке (вначале самые дорогие), плюс по названию продукта:
FROM Products
ORDER BY prod_price DESC, prod_name;
prod id prod_price prod_name
--------- ------------ ------------------
BR03 11.9900 18 inch teddy bear
RYLOl 9.4900 King doll
RYL02 9.4900 Queen doll
BR02 8.9900 12 inch teddy bear
BROl 5.9900 8 inch teddy bear
RGANOl 4.9900 Raggedy Ann
BNBG02 3.4900 Bird bean bag toy
BNBGOl 3.4900 Fish bean bag toy
BNBG03 3.4900 Rabbit bean bag toy
Ключевое слово DESC применяется только к тому столбцу, после которого оно указано. В предыдущем примере ключевое слово DESC было указано для столбца prod_price, но не для prod_name. Таким образом, столбец prod_price отсортирован в порядке убывания, а столбец prod_name в обычном, возрастающем порядке.
Сортировка по убыванию по нескольким столбцам
Следует упомянуть, что DESC — это сокращение от DESCENDING, можно использовать оба ключевых слова. Противоположным словом для DESC является ASC (ASCENDING), которое можно указывать для сортировки по возрастанию. Однако на практике слово ASC обычно не применяется, поскольку такой порядок используется по умолчанию (он предполагается, если не указано ни ABС, ни DESC).
Чувствительность к регистру и порядок сортировки
При лексикографическом порядке сортировки А считается идентичным а, и такое поведение является обычным для большинства систем управления базами данных. Однако в некоторых СУБД администратор может при необходимости это поведение изменить. (Это может оказаться полезным, если в вашей базе данных содержится много символов из другого языка.) Суть в том, что если вам понадобится альтернативный порядок сортировки, его нельзя будет достичь посредством обычного предложения ORDER BY. Вам придется обратиться к администратору базы данных.



