Субд лекции

Темы:

Запросы

Каждое выражение во фразе SELECT должно принимать единственное значение для группы, т.е. оно может быть либо самой колонкой, либо арифметическим выражением, включающим эту колонку, либо агрегатной функцией, которая получает в результате единственное значение для группы. Кроме того, в SELECT может быть включена константа.

Предложение HAVING. Вместе с GROUP BY может использоваться фраза HAVING, которая для групп имеет то же значение, что и фраза WHERE - для строк.

Например, запрос на выдачу списка кодов тех материалов, по которым было выполнено более чем по одной поставке, будет выглядеть следующим образом:

SELECT codmat

FROM post

GROOUP BY codmat

HAVING COUNT(*)>1;

Выражение во фразе HAVING должно принимать единственное значение для группы. Формат COUNT(*) означает подсчет всех строк таблицы.

Предложение ORDER BY. Информация, получаемая в результате реализации запроса, может быть упорядочена. Для этого используется фраза ORDER BY. Строки сортируются в соответствии со значениями столбцов, указанных в списке. В этом списке могут задаваться либо имена колонок, либо целое число, которое соответствует номеру колонки в таблице, считая слева направо. Когда колонки, по которым осуществляется упорядочение, вычисляемые или являются результатом операции UNION, то «целое» должно использоваться вместо имени колонки.

Параметр ASC/DESC означает вид сортировки (по возрастанию /по убыванию соответственно). По умолчанию принимается значение ASC.

Если в ORDER BY специфицируется список полей, то это означает упорядочение по составному ключу. Старшинство полей сортировки будет определяться порядком следования полей в списке.

Колонки, специфицированные в ORDER BY, должны быть включены в SELECT.

предыдущаяследующая