Функции, используемых в базах данных SQL

Область применения:yesSQL Server (все поддерживаемые версии) YesБаза данных SQL Azure YesУправляемый экземпляр SQL Azure yesAzure Synapse Analytics yesAnalytics Platform System (PDW)

Сведения о категориях встроенных функций, которые можно использовать с базами данных SQL. Вы можете использовать встроенные функции или создавать собственные пользовательские функции.

Агрегатные функции

Агрегатные функции выполняют вычисление на наборе значений и возвращают одиночное значение. Они допускаются в списке выбора или в предложении HAVING инструкции SELECT. Агрегатную функцию можно использовать в сочетании с предложением GROUP BY для статистических вычислений на основе категорий строк. Используйте предложение OVER для вычисления статистического значения на основе определенного диапазона значений. Предложение OVER не может следовать за агрегатными функциями GROUPING и GROUPING_ID.

Все агрегатные функции являются детерминированными. Это означает, что они всегда возвращают одинаковый результат для одинаковых входных значений. Дополнительные сведения см. в статье Детерминированные и недетерминированные функции.

Аналитические функции

Аналитические функции вычисляют статистическое значение на основе группы строк. Однако, в отличие от агрегатных функций, аналитические функции могут возвращать несколько строк для каждой группы. Аналитические функции можно использовать для вычисления скользящих средних, промежуточных итогов, процентных долей или первых N результатов в группе.

Функции поразрядной операции

Область применения: предварительная версия SQL Server 2022 (16.x)

Функции поразрядной операции позволяют обрабатывать и хранить данные более эффективно, чем при использовании отдельных битов. Дополнительные сведения см. в статье Функции поразрядной операции.

Ранжирующие функции

Ранжирующие функции возвращают ранжирующее значение для каждой строки в секции. В зависимости от используемой функции значения некоторых строк могут совпадать. Ранжирующие функции являются недетерминированными.

Функции наборов строк

Функции наборов строк возвращают объект, который можно использовать так же, как табличные ссылки в инструкции SQL.

Скалярные функции

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

Категории скалярных функций

Категория функции Описание
Функции конфигурации Возвращают сведения о текущей конфигурации.
Функции преобразования Поддержка приведения и преобразования типов данных.
Функции работы с курсорами Возвращают сведения о курсорах.
Функции и типы данных даты и времени Выполняют операции над исходными значениями даты и времени, возвращают строковые и числовые значения, а также значения даты и времени.
Функции JSON Проверяют, запрашивают или изменяют данные JSON.
Логические функции Выполнение логических операций.
Математические функции Выполняют вычисления, основанные на числовых значениях, переданных функции в виде аргументов, и возвращают числовые значения.
Функции метаданных Возвращают сведения о базах данных и объектах баз данных.
Функции безопасности Возвращают данные о пользователях и ролях.
Строковые функции Выполняют операции со строковым (char или varchar) входным значением и возвращают строковое или числовое значение.
Системные функции Выполняют операции над значениями, объектами и параметрами экземпляра SQL Server и возвращают сведения о них.
Системные статистические функции Возвращают статистические сведения о системе.
Функции обработки текста и изображений Выполняют операции над текстовыми или графическими исходными значениями или столбцами и возвращают сведения о значении.

Детерминизм функций

Различаются детерминированные и недетерминированные встроенные функции SQL Server. Функция является детерминированной, если для определенных входных значений она каждый раз возвращает один и тот же результат. Функция является недетерминированной, если она возвращает различные результаты даже для одних и тех же исходных значений. Дополнительные сведения см. в статье Детерминированные и недетерминированные функции.

Параметры сортировки функций

Функции, в которые вводится символьная строка и которые выдают ее, используют параметры сортировки входной строки для строки вывода.

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

Функции, обрабатывающие в качестве исходных данных несколько символьных строк и возвращающие символьную строку, задают параметры сортировки для строки вывода по правилам очередности параметров сортировки. Дополнительные сведения см. в разделе Очередность параметров сортировки (Transact-SQL).

См. также раздел