WikiDer > Сортировать по

Order by

An СОРТИРОВАТЬ ПО пункт в SQL указывает, что SQL ВЫБРАТЬ инструкция возвращает набор результатов с сортировкой строк по значениям одного или нескольких столбцов. Критерии сортировки не обязательно должны быть включены в набор результатов. Критерии сортировки могут быть выражениями, включая имена столбцов, определяемые пользователем функции, арифметические операции или ДЕЛО выражения. Выражения оцениваются, и результаты используются для сортировки, то есть значения, хранящиеся в столбце, или результаты вызова функции.

СОРТИРОВАТЬ ПО это Только способ сортировки строк в наборе результатов. Без этого предложения реляционная система базы данных может возвращать строки в любом порядке. Если требуется заказ, СОРТИРОВАТЬ ПО должны быть указаны в ВЫБРАТЬ выписка, отправленная приложением. Хотя некоторые системы баз данных позволяют указывать СОРТИРОВАТЬ ПО пункт в подпунктах или Посмотреть определения, присутствие там не имеет никакого эффекта. Представление - это логическая реляционная таблица, а реляционная модель требует, чтобы таблица была набором строк, что не подразумевает никакого порядка сортировки. Единственное исключение - конструкции вроде ЗАКАЗ ЗА ЗАКАЗОМ ... (не стандартизирован в SQL: 2003), которые позволяют распространять критерии сортировки через вложенные подзапросы.

Основные функции стандарта SQL не определяют явно порядок сортировки по умолчанию для Нули. С SQL: 2003 расширение T611, «Элементарные операции OLAP», нули можно отсортировать до или после всех значений данных с помощью ПЕРВЫЕ НУЛИ или же ПОСЛЕДНИЕ НУЛИ статьи СОРТИРОВАТЬ ПО list соответственно. Однако не все производители СУБД реализуют эту функцию. Поставщики, которые не реализуют эту функцию, могут указать различные методы сортировки Null в СУБД.[1]

Структура ЗАКАЗАТЬ ПО… будет упорядочиваться в порядке убывания, в противном случае используется порядок возрастания. (Последнее можно указать явно с помощью ASC.)

Примеры

ВЫБРАТЬ * ИЗ Сотрудники ПОРЯДОК К Фамилия, Имя

Сортировка выполняется по полю LastName, а затем по полю FirstName, если LastName совпадает.

Рекомендации

  1. ^ «Обработка NULL в SQLite по сравнению с другими механизмами баз данных». Получено 25 января, 2009.