2.4. Выборка с упорядочением
Синтаксис фразы упорядочения был дан в
п. 2.1.
Простейший вариант этой фразы - упорядочение строк результата по
значению одного из столбцов с указанием порядка сортировки или без
такого указания. (По умолчанию строки будут сортироваться в порядке
возрастания значений в указанном столбце.)
Например, выдать перечень продуктов и
содержание в них основных веществ в порядке убывания содержания белка
|
Результат: |
SELECT Продукт, Белки, Жиры, Углев FROM Продукты ORDER BY Белки DESC;
|
|
Продукт |
Белки |
Жиры |
Углев |
Судак |
190. |
80. |
0. |
Говядина |
189. |
124. |
0. |
Творог |
167. |
90. |
13. |
Яйца |
127. |
115. |
7. |
Кофе |
127. |
36. |
9. |
Мука |
106. |
13. |
732. |
. . . |
|
При включении в список ORDER BY
нескольких столбцов СУБД сортирует строки результата по значениям
первого столбца списка пока не появится несколько строк с одинаковыми
значениями данных в этом столбце. Такие строки сортируются по значениям
следующего столбца из списка ORDER BY и т.д.
Например, выдать содержимое таблицы
Блюда, отсортировав ее строки по видам блюд и основе:
|
Результат: |
SELECT * FROM Блюда ORDER BY В Основа;
|
|
БЛ |
Блюдо |
В |
Основа |
Выход |
Труд |
21 |
Пудинг рисовый |
Г |
Крупа |
160. |
6 |
20 |
Каша рисовая |
Г |
Крупа |
210. |
4 |
18 |
Сырники |
Г |
Молоко |
220. |
4 |
. . . |
16 |
Драчена |
Г |
Яйца |
180. |
4 |
28 |
Крем творожный |
Д |
Молоко |
160. |
4 |
. . . |
26 |
Яблоки печеные |
Д |
Фрукты |
160. |
3 |
7 |
Сметана |
З |
Молоко |
140. |
1 |
8 |
Творог |
З |
Молоко |
140. |
2 |
2 |
Салат мясной |
З |
Мясо |
200. |
4 |
6 |
Мясо с гарниром |
З |
Мясо |
250. |
3 |
1 |
Салат летний |
З |
Овощи |
200. |
3 |
. . . |
|
Кроме того, в список ORDER BY можно
включать не только имя столбца, а его порядковую позицию в перечне
SELECT. Благодаря этому возможно упорядочение результатов на основе
вычисляемых столбцов, не имеющих имен.
Например, запрос
SELECT Продукт, ((Белки+Углев)*4.1+Жиры*9.3) FROM Продукты ORDER BY 2;
позволит получить список продуктов,
показанный на рис.2.2,в – переупорядоченный по возрастанию значений
калорийности список рис.2.2,а.
2.3.5
| Содержание
| 2.5.1
|