double arrow

Вычисление экстремумов (MIN и МАХ)

Вычисление среднего значения столбца (AVg)

Агрегатная функция avg () вычисляет среднее всех значений, содержащихся в столбце. Как и в случае с функцией sum (), данные, содержащиеся в столбце, должны иметь числовой тип. Поскольку функция avg () вначале суммирует все значения, содержащиеся в столбце, а затем делит сумму на число этих значений, возвращаемый ею результат может иметь не такой тип данных, как столбец. Например, если применить функцию avg () к столбцу целых чисел, результат будет либо десятичным числом, либо числом с плавающей запятой — в зависимости от используемой СУБД.

Ниже приведено несколько примеров использования агрегатной функции AVG ():

Агрегатные функции min() и мах() позволяют найти соответственно наименьшее и наибольшее значения в столбце. При этом столбец может содержать числовые или строковые значения либо значения даты/времени. Результат, возвращаемый этими функциями, имеет точно такой же тип данных, что и сам столбец.

В случае применения агрегатных функций m i n () и мах() к числовым данным числа сравниваются по арифметическим правилам (большие отрицательные числа меньше, чем маленькие отрицательные числа, которые меньше нуля; нуль меньше любого положительного числа). Сравнение дат происходит последовательно (более ранние значения дат считаются меньшими, чем более поздние). Сравнение интервалов времени выполняется на основании их продолжительности (более короткие интервалы времени меньше, чем более длинные).

При использовании функций min() и мах() со строковыми данными результат сравнения двух строк зависит от используемой таблицы кодировки. На персональных компьютерах и мини-компьютерах, где используется таблица кодировки ASCII, в последовательности сортировки цифры идут перед буквами, а все прописные буквы идут перед строчными. На мэйнфреймах компании IBM, где используется таблица кодировки EBCDIC, строчные символы расположены перед прописными, а цифры следуют за буквами.

Отличия в последовательностях сортировки приводят к тому, что один и тот же запрос, содержащий предложение order by, на различных системах может привести к различным результатам.

Использование символов национальных алфавитов (например, кириллицы) может вызвать дополнительные проблемы. В некоторых СУБД для каждого языка используется свой алгоритм сортировки таких символов. В других СУБД такие символы сортируются в соответствии с кодом символа. Для решения этой проблемы в стандарт SQL2 включено условие поддержки национальных наборов символов, пользовательских наборов символов и альтернативных последовательностей сортировки. К сожалению, в настоящее время эти возможности поддерживаются не во всех СУБД. Если в приложении используются символы национальных алфавитов, необходимо проверить, как конкретная СУБД обрабатывает их.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: