SQL функции: примеры кода

JSON функции
  • ISJSON - Проверяет, содержит ли строка допустимый JSON
  • JSON_EXTRACT - Возвращает данные из JSON-документа
  • JSON_MODIFY - Обновляет значение свойства в строке JSON
  • JSON_QUERY - Извлекает объект или массив из строки JSON
  • JSON_VALUE - Извлекает скалярное значение из строки JSON
XML функции
  • FOR XML - Возвращает результаты запроса в виде XML
  • OPENXML - Предоставляет представление в виде набора строк для XML-документа
  • XML_EXISTS - (Метод XQuery) Возвращает бит, указывающий, возвращает ли запрос непустую последовательность
  • XML_MODIFY - (Метод XQuery) Обновляет содержимое XML-документа
  • XML_NODES - (Метод XQuery) Возвращает набор строк XML-узлов из XML-документа
  • XML_QUERY - (Метод XQuery) Возвращает фрагмент XML из экземпляра XML
  • XML_VALUE - (Метод XQuery) Возвращает значение типа SQL из экземпляра XML
Агрегатные функции
  • AVG - Возвращает среднее значение выражения
  • CHECKSUM_AGG - Возвращает контрольную сумму значений в группе
  • COUNT - Возвращает количество элементов в группе
  • GROUPING - Указывает, агрегировано ли указанное выражение столбца в списке GROUP BY
  • GROUPING_ID - Вычисляет уровень группировки
  • MAX - Возвращает максимальное значение в выражении
  • MIN - Возвращает минимальное значение в выражении
  • STDEV - Возвращает статистическое стандартное отклонение всех значений в указанном выражении
  • SUM - Возвращает сумму всех значений в выражении
  • VAR - Возвращает статистическую дисперсию всех значений в указанном выражении
Аналитические функции
  • CUME_DIST - Вычисляет кумулятивное распределение значения в группе значений
  • FIRST_VALUE - Возвращает первое значение в упорядоченном наборе значений
  • LAG - Обращается к данным из предыдущей строки в том же результирующем наборе без самообъединения
  • LAST_VALUE - Возвращает последнее значение в упорядоченном наборе значений
  • LEAD - Обращается к данным из последующей строки в том же результирующем наборе
  • PERCENT_RANK - Вычисляет относительный ранг строки в группе строк
  • PERCENTILE_CONT - Вычисляет процентиль на основе непрерывного распределения значений столбца
  • PERCENTILE_DISC - Вычисляет определенный процентиль для отсортированных значений в группе
Битовые функции
  • BIT_COUNT - Возвращает количество установленных битов в аргументе
  • GET_BIT - Возвращает значение бита в указанной позиции
  • SET_BIT - Устанавливает бит в указанной позиции в значение
Весовые функции полнотекстового поиска
  • CONTAINSTABLE - Возвращает таблицу с нулем или более строк для столбцов, содержащих точные или нечеткие совпадения
  • FREETEXTTABLE - Возвращает таблицу с нулем или более строк для столбцов, содержащих совпадения по смыслу
Геопространственные функции
  • STArea - Возвращает общую площадь поверхности экземпляра geography
  • STDistance - Возвращает кратчайшее расстояние между точкой в экземпляре geography и точкой в другом экземпляре geography
  • STIntersects - Определяет, пересекаются ли два экземпляра geography
  • STLength - Возвращает общую длину элементов в экземпляре geography
Даты и времени функции
  • CURRENT_TIMESTAMP - Возвращает текущие дату и время
  • DATEADD - Добавляет интервал к указанной дате
  • DATEDIFF - Возвращает разницу между двумя датами
  • DATEPART - Возвращает целое число, представляющую указанную часть даты (datepart) указанной даты
  • DAY - Возвращает часть дня из даты
  • FORMAT - Возвращает значение, отформатированное указанным форматом
  • GETDATE - Возвращает текущую метку времени системы базы данных в виде значения datetime
  • MONTH - Возвращает часть месяца из даты
  • YEAR - Возвращает часть года из даты
Логические функции
  • CHOOSE - Возвращает элемент по указанному индексу из списка значений
  • COALESCE - Возвращает первое не NULL выражение среди своих аргументов
  • IIF - Возвращает одно из двух значений в зависимости от того, истинно или ложно логическое выражение
  • NULLIF - Возвращает значение NULL, если два указанных выражения равны
Математические функции
  • ABS - Возвращает абсолютное (положительное) значение числового выражения
  • CEILING - Возвращает наименьшее целое число, большее или равное указанному числовому выражению
  • EXP - Возвращает экспоненциальное значение указанного выражения float
  • FLOOR - Возвращает наибольшее целое число, меньшее или равное указанному числовому выражению
  • LOG - Возвращает натуральный логарифм указанного выражения float
  • POWER - Возвращает значение указанного выражения в указанной степени
  • RAND - Возвращает случайное значение float от 0 до 1
  • ROUND - Возвращает числовое значение, округленное до указанной длины или точности
  • SQRT - Возвращает квадратный корень указанного значения float
Оконные функции
  • DENSE_RANK - Возвращает ранг строк в разделе результирующего набора без пропусков в нумерации
  • NTILE - Распределяет строки упорядоченного раздела на указанное количество групп
  • RANK - Возвращает ранг каждой строки в разделе результирующего набора
  • ROW_NUMBER - Возвращает порядковый номер строки в разделе результирующего набора
Операторы множеств
  • EXCEPT - Возвращает любые различные значения из левого запроса, которые не найдены в правом запросе
  • INTERSECT - Возвращает любые различные значения, которые возвращаются как левым, так и правым запросом операнда INTERSECT
  • UNION - Объединяет результаты двух или более запросов в один результирующий набор
Предикаты
  • BETWEEN - Определяет диапазон для проверки
  • EXISTS - Определяет подзапрос для проверки существования строк
  • IN - Определяет, соответствует ли указанное значение любому значению в подзапросе или списке
  • IS NULL - Определяет, является ли указанное выражение NULL
  • LIKE - Определяет, соответствует ли конкретная строка указанному шаблону
Сетевые функции
  • @@SPID - Возвращает идентификатор сеанса текущего пользовательского процесса
  • CONNECTIONPROPERTY - Возвращает сведения об уникальных свойствах подключения для текущего соединения
  • HOST_ID - Возвращает идентификационный номер рабочей станции
  • HOST_NAME - Возвращает имя рабочей станции
Системные административные функции
  • sp_adduser - Добавляет нового пользователя в текущую базу данных
  • sp_changedbowner - Изменяет владельца текущей базы данных
  • sp_helpdb - Предоставляет сведения об указанной базе данных или всех базах данных
  • sp_spaceused - Отображает количество строк, зарезервированное и используемое дисковое пространство для таблицы или базы данных
  • sp_who - Предоставляет информацию о текущих пользователях, сеансах и процессах
Системные информационные функции
  • @@SERVERNAME - Возвращает имя локального сервера, на котором работает SQL Server
  • @@VERSION - Возвращает версию, архитектуру процессора, дату сборки и ОС для SQL Server
  • COL_NAME - Возвращает имя столбца базы данных
  • DB_NAME - Возвращает имя базы данных
  • OBJECT_NAME - Возвращает имя объекта базы данных для объектов в области схемы
Строковые функции
  • CHARINDEX - Возвращает начальную позицию указанного выражения в строке
  • CONCAT - Возвращает строку, являющуюся результатом объединения двух или более строковых значений
  • LEFT - Возвращает левую часть строки с указанным количеством символов
  • LEN - Возвращает количество символов указанного строкового выражения, исключая конечные пробелы
  • LENGTH - Возвращает длину строки в байтах или символах
  • LOWER - Возвращает символьное выражение, в котором символы верхнего регистра преобразованы в нижний
  • LTRIM - Возвращает символьное выражение после удаления начальных пробелов
  • PATINDEX - Возвращает начальную позицию первого вхождения шаблона в указанном выражении
  • REPLACE - Заменяет все вхождения указанного строкового значения другим строковым значением
  • RIGHT - Возвращает правую часть строки с указанным количеством символов
  • RTRIM - Возвращает строку после удаления всех конечных пробелов
  • STRING_AGG - Объединяет значения строковых выражений и помещает значения-разделители между ними
  • STRING_SPLIT - Разделяет строку на строки подстрок на основе указанного символа-разделителя
  • SUBSTRING - Возвращает часть символьного, двоичного, текстового или image выражения
  • TRIM - Удаляет пробелы или другие указанные символы из начала и конца строки
  • UPPER - Возвращает символьное выражение, в котором символы нижнего регистра преобразованы в верхний
Функции атомарности меток доступа (LBAC)
  • fn_my_permissions - Возвращает список разрешений, фактически предоставленных участнику для защищаемого объекта
Функции безопасности и шифрования
  • DECRYPTBYKEY - Расшифровывает данные с помощью симметричного ключа
  • ENCRYPTBYKEY - Шифрует данные с помощью симметричного ключа
  • HASHBYTES - Возвращает хеш входного значения
  • IS_MEMBER - Указывает, является ли текущий пользователь членом указанной группы Windows или роли SQL Server
  • IS_SRVROLEMEMBER - Указывает, является ли текущее имя входа членом указанной серверной роли
  • SUSER_SNAME - Возвращает имя входа, связанное с идентификационным номером безопасности (SID)
  • USER_NAME - Возвращает имя пользователя базы данных по указанному идентификационному номеру
Функции для работы с диаграммами сходства
  • SEMANTICKEYPHRASETABLE - Возвращает таблицу ключевых фраз, связанных со столбцами, настроенными для статистического семантического индексирования
  • SEMANTICSIMILARITYTABLE - Возвращает таблицу с нулем или более строк для документов, схожих по смыслу
Функции для работы с иерархиями (HierarchyID)
  • GETANCESTOR - Возвращает hierarchyid, представляющий n-го предка данного hierarchyid
  • GETDESCENDANT - Возвращает дочерний узел родителя
  • GETLEVEL - Возвращает целое число, представляющее глубину этого узла в дереве
  • GetReparentedValue - Перемещает узел в иерархии в новое место
  • ISDESCENDANTOF - Возвращает true, если этот узел является потомком родительского
  • ToString - Возвращает строковое представление этого значения hierarchyid
Функции для работы с последовательностями
  • CREATE_SEQUENCE - Создает объект последовательности и задает его свойства
  • NEXT VALUE FOR - Возвращает следующее значение из указанной последовательности
Функции для работы с пространственными данными
  • STAsText - Возвращает представление экземпляра geometry в формате Well-Known Text (WKT) консорциума OGC
  • STGeometryN - Возвращает указанную геометрию из GeometryCollection
  • STGeomFromText - Создает экземпляр geometry из представления в формате Well-Known Text (WKT) консорциума OGC
  • STNumGeometries - Возвращает количество геометрических объектов, составляющих экземпляр geometry
  • STSrid - Возвращает идентификатор пространственной привязки (SRID) экземпляра geography
Функции для работы с расширенными свойствами
  • fn_listextendedproperty - Возвращает значения расширенных свойств объектов базы данных
  • sp_addextendedproperty - Добавляет новое расширенное свойство к объекту базы данных
Функции защиты данных (Data Masking)
  • DYNAMIC_DATA_MASKING - Применяет маску к конфиденциальным данным в результатах запроса
  • MASKED WITH - Определяет функцию маскирования данных в определении столбца
Функции изменения метаданных
  • ALTER AUTHORIZATION - Изменяет владельца защищаемого объекта
  • sp_addmessage - Добавляет новое пользовательское сообщение об ошибке в экземпляр SQL Server
  • sp_dropmessage - Удаляет пользовательское сообщение об ошибке
Функции манипулирования статистиками
  • fn_trace_getinfo - Возвращает сведения об указанной трассировке или всех существующих трассировках
  • fn_trace_gettable - Возвращает информацию файла трассировки в табличной форме
  • sp_control_plan_guide - Включает, отключает или удаляет структуру плана
  • sp_create_plan_guide - Создает структуру плана для связывания указаний запроса или фактических планов запросов с запросами
  • sp_updatestats - Обновляет всю статистику в текущей базе данных
  • UPDATE STATISTICS - Обновляет статистику оптимизации запросов для таблицы или индексированного представления
Функции настройки и конфигурации
  • @@OPTIONS - Возвращает сведения о текущих параметрах SET
  • SET SHOWPLAN_XML - Указывает SQL Server не выполнять инструкции Transact-SQL, а возвращать предполагаемый план выполнения в формате XML
  • SET STATISTICS IO - Отображает сведения об объеме операций диска, созданных инструкциями Transact-SQL
  • SET STATISTICS TIME - Отображает количество миллисекунд, необходимое для синтаксического анализа, компиляции и выполнения каждой инструкции
  • SET TRANSACTION ISOLATION LEVEL - Управляет поведением блокировок и управления версиями строк для инструкций Transact-SQL
  • sp_configure - Отображает или изменяет глобальные параметры конфигурации для текущего сервера
Функции обработки исключений
  • RAISERROR - Формирует сообщение об ошибке и инициирует обработку ошибки
  • THROW - Вызывает исключение и передает выполнение блоку CATCH
  • XACT_STATE - Возвращает состояние пользовательской транзакции для текущего выполняющегося запроса
Функции полного текстового поиска
  • CONTAINS - Проверяет точные или нечеткие совпадения с отдельными словами и фразами
  • FREETEXT - Ищет смысл, а не точные слова, в текстовых данных
Функции потоков данных (Stream)
  • STREAM - Не функция. В контексте SQL 'Stream' часто связан с функциями FILESTREAM или потоковой передачи данных, а не с функцией T-SQL.
Функции потокового ввода-вывода
Функции работы с FileStream
  • PATHNAME - Возвращает путь к двоичному большому объекту (BLOB) FILESTREAM
Функции работы с большими объектами (LOB)
  • TEXTPTR - Возвращает значение текстового указателя, соответствующее столбцу text, ntext или image
  • TEXTVALID - Проверяет, действителен ли заданный текстовый указатель
Функции работы с динамическими масками данных
  • @DynamicDataMasking - Не функция, а возможность. Функции для управления обычно являются процедурами (например, sp_add_data_masking).
Функции работы с курсорами
  • @@CURSOR_ROWS - Возвращает количество подходящих строк в последнем открытом курсоре подключения
  • @@FETCH_STATUS - Возвращает состояние последнего выполненного оператора FETCH для любого курсора, открытого подключением
  • CURSOR_STATUS - Позволяет вызывающей стороне хранимой процедуры определить, вернула ли процедура курсор и результирующий набор
Функции работы с метаданными
  • COLUMNPROPERTY - Возвращает сведения о столбце или параметре процедуры
  • DB_ID - Возвращает идентификационный номер базы данных
  • INDEX_COL - Возвращает имя индексированного столбца
  • INDEXKEY_PROPERTY - Возвращает сведения о ключе индекса
  • INDEXPROPERTY - Возвращает значение указанного свойства индекса или статистики для заданного ID таблицы, имени индекса и имени свойства
  • OBJECT_ID - Возвращает идентификационный номер объекта базы данных, имеющего область схемы
  • OBJECTPROPERTY - Возвращает сведения об объектах в текущей базе данных
  • OBJECTPROPERTYEX - Возвращает сведения об объектах в текущей базе данных (расширенные)
Функции работы с секционированием
  • $PARTITION - Возвращает номер секции, в которую будет сопоставлен набор значений столбца секционирования для указанной функции секционирования
  • PARTITION - Используется в CREATE PARTITION FUNCTION и ALTER PARTITION FUNCTION для указания граничных значений
Функции работы с транзакциями
  • @@TRANCOUNT - Возвращает количество операторов BEGIN TRANSACTION, выполненных в текущем подключении
Функции работы с триггерами
  • COLUMNS_UPDATED - Возвращает двоичный битовый шаблон, указывающий, какие столбцы в таблице были вставлены или обновлены
  • EVENTDATA - Возвращает сведения о событиях сервера или базы данных (используется внутри DDL-триггеров)
  • TRIGGER_NESTLEVEL - Возвращает количество триггеров, сработавших для оператора, вызвавшего срабатывание триггера
  • UPDATE - Функция обновления столбца, используемая внутри триггеров INSERT или UPDATE для проверки, был ли столбец вставлен или обновлен
Функции разностного отслеживания изменений (Change Tracking)
  • CHANGE_TRACKING_CURRENT_VERSION - Получает номер версии, связанный с последней зафиксированной транзакцией
  • CHANGE_TRACKING_GET_CHANGES - Возвращает информацию об отслеживании изменений для таблицы между двумя указанными версиями
  • CHANGE_TRACKING_MIN_VALID_VERSION - Возвращает минимальную действительную версию для получения изменений из указанной таблицы
  • CHANGETABLE - Возвращает информацию об отслеживании изменений для таблицы
Функции сжатия данных
  • COMPRESS - Сжимает входное выражение с использованием алгоритма GZIP
  • DECOMPRESS - Распаковывает входное выражение (алгоритм GZIP)
Функции управления системой
  • @@ERROR - Возвращает номер ошибки для последнего выполненного оператора Transact-SQL
  • @@IDENTITY - Возвращает последнее вставленное значение идентификатора
  • @@ROWCOUNT - Возвращает количество строк, обработанных последним оператором
  • HAS_PERMS_BY_NAME - Оценивает эффективное разрешение текущего пользователя для защищаемого объекта
  • SUSER_ID - Возвращает идентификационный номер входа для имени входа пользователя
  • SUSER_NAME - Возвращает имя входа по идентификационному номеру входа
  • USER_ID - Возвращает идентификационный номер пользователя базы данных
Функции хэширования
  • BINARY_CHECKSUM - Возвращает двоичное значение контрольной суммы, вычисленное для строки таблицы или списка выражений
  • CHECKSUM - Возвращает значение контрольной суммы, вычисленное для строки таблицы или списка выражений