Поделиться через


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

Применимо к:SQL ServerБаза данных Azure SQLУправляемый экземпляр Azure SQLAzure Synapse AnalyticsСистема платформы аналитики (PDW)Конечная точка SQL аналитики в Microsoft FabricХранилище в Microsoft FabricБаза данных SQL в Microsoft Fabric

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

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

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

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

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

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

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

Относится к: SQL Server 2022 (16.x) и более поздние версии, Azure SQL Managed Instance, Azure SQL Database, SQL база данных в Microsoft Fabric

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ограничения

Сведения об ограничениях типов функций и платформ см. в статье CREATE FUNCTION (Transact-SQL).