SQL Server
Общие функции SQL Server SQLServer charindex ( string_expression1 , string_expression2 [ , start_location ]  ) Ищет первое вхождение строки "string_expression1" в строке "string_expression2" и возвращает целое число. Параметр "start_location" представляет собой позицию, с которой следует начинать поиск "string_expression1" в "string_expression2". Если параметр "start_location" не задан, является отрицательным числом или равен нулю, то поиск начинается с начала строки "string_expression2". concat ( string_expression1 ; string_expression2 ) Возвращает строку, являющуюся результатом конкатенации (объединения) строк "string_expression1" и "string_expression2". Пример: concat ( [Продажи (запрос)].[Сотрудники отд. продаж];[Имя]; [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] ) Результат: Возвращает имя и фамилию, например, Иван Петров. {current_user} { current_user } Возвращает имя текущего пользователя. datalength ( string_expression ) Возвращает длину строки "string_expression" в байтах. dateadd ( { datepart } , integer_expression , date_expression ) Возвращает дату, являющуюся результатом добавления "integer_expression" единиц (указанных в "datepart" (например, день, месяц, год)) к "date_expression". datediff ( {datepart} , date_expression1 , date_expression2 ) Возвращает количество единиц "datepart" (дней, месяцев, лет) между датами "date_expression1" и "date_expression2". Пример: datediff ( {yy} , 1984-01-01 , 1997-01-01 ) Результат: 13 datename ( ' { ' datepart ' } ' , date_expression ) Возвращает часть "datepart" значения "date_expression" типа datetime, smalldatetime, date или time в виде строки ASCII. Обратите внимание, что аргумент "datepart" должен быть ключевым словом, представляющим функцию datepart или ее сокращение, распознаваемое Microsoft® SQL Server, и должен быть заключен в фигурные скобки. Пример: datename ( {mm} , 2000-01-01 ) Результат: январь datepart ( ' { ' datepart ' } ' , date_expression ) Возвращает часть значения "date_expression" (например, месяц) в виде целого числа. "date_expression" может быть типа datetime, smalldatetime, date или time. Обратите внимание, что аргумент "datepart" должен быть ключевым словом, представляющим функцию datepart или ее сокращение, распознаваемое Microsoft® SQL Server, и должен быть заключен в фигурные скобки. Пример: datepart ( {wk} , 2000-01-01 ) Результат: 1 (первая неделя года) day ( date_expression ) Возвращает день из "date_expression". Аналогично функции extract (день из "date_expression"). difference ( string_expression1 , string_expression2 ) Возвращает целочисленное значение разницы между значениями, которые возвращает функция soundex, зависящая от источника данных, для "string_expression1" и "string_expression2". Возвращенное значение находится в диапазоне от 0 до 4, где 4 означает наиболее близкое соответствие. Обратите внимание, что значение 4 не означает, что строки полностью совпадают. Пример: difference ([План продаж (запрос)].[Сотрудники отд. продаж].[Фамилия],[Продажи (запрос)].[Розничные продавцы].[Имя контакта]) Результат: 0 Пример: difference ([План продаж (запрос)].[Сотрудники отд. продаж].[Имя],[План продаж (запрос)].[Сотрудники отд. продаж].[Имя]) Результат: 4 getdate () Возвращает значение типа datetime, представляющее текущую дату и время компьютера, на котором работает СУБД. isnull ( expression , expression ) Возвращает значение первого ненулевого аргумента (или ноль, если оба аргумента нулевые). Рекомендуется вместо этой функции использовать стандартную функцию SQL, COALESCE. Пример: isnull ( [Продажи (запрос)].[Факт продаж].[Количество продаж] , 0 ) Результат: Возвращает количество продаж, если оно не является нулевым; в противном случае возвращает 0. left ( string_expression , integer_expression ) Возвращает крайние слева символы в количестве "integer_expression" из выражения "string_expression". Пример: left ( [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] , 3 ) Результат: Возвращает первые три символа каждой фамилии. ltrim ( string_expression ) Возвращает строку "string_expression" с удаленными начальными пробелами. month ( date_expression ) Возвращает месяц из "date_expression". Аналогично функции extract (month from date_expression). patindex ( string_expression1 , string_expression2 ) Возвращает целое число, представляющее собой начальное положение первого вхождения "string_expression1" в "string_expression2". Возвращает 0, если строка "string_expression1" не найдена. Символ подстановки % должен использоваться до и после "string_expression1" за исключением случаев, когда выполняется поиск первого или последнего символов. Пример: patindex ( '%po%', 'Report' ) Результат: 3 replace ( string_expression1 , string_expression2 , string_expression3 ) Заменяет все вхождения строки "string_expression2" в строке "string_expression1" строкой "string_expression3". replicate ( string_expression , integer_expression ) Возвращает строку, состоящую из выражения "string_expression", повторяющегося "integer_expression" раз. reverse ( string_expression ) Возвращает "string_expression" в обратном порядке. rtrim ( string_expression ) Возвращает строку "string_expression" с удаленными концевыми пробелами. Пример: rtrim ( [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] ) Результат: Возвращает фамилии, удаляя все пробелы в конце. sign ( numeric_expression ) Возвращает индикатор знака "numeric_expression": +1, если значение "numeric_expression" положительное, 0 - если оно равно нулю, или -1 - если оно отрицательное. space ( integer_expression ) Возвращает строку, состоящую из пробелов в количестве "integer_expression". str ( numeric_expression [ , integer_expression1 [ , integer_expression2 ] ] ) Возвращает строчное представление "numeric_expression", где "integer_expression1" представляет собой длину возвращаемой строки, а аргумент "integer_expression2" – количество десятичных разрядов. stuff ( string_expression1 , integer_expression1 , integer_expression2 , string_expression2 ) Возвращает строку, где "integer_expression2" символов было удалено из строки "string_expression1", начиная с "integer_expression1", и где строка "string_expression2" была вставлена в начало строки "string_expression1". Первый символ строки находится в положении 1. year ( date_expression ) Возвращает год из "date_expression". Аналогично функции extract (год из date_expression). ascii ( string_expression ) Возвращает число, представляющее собой значение ASCII-кода крайнего слева символа строки "string_expression". Пример: ascii ( 'A' ) Результат: 65 char ( integer_expression ) Возвращает символ, значение ASCII-кода которого равно "integer_expression". Значение "integer_expression" должно быть в диапазоне от 0 до 255. Пример: char ( 65 ) Результат: A right ( string_expression , integer_expression ) Возвращает "integer_expression" правых символов выражения "string_expression". round ( numeric_expression , integer_expression ) Возвращает выражение "numeric_expression", округленное до ближайшего значения с "integer_expression" знаками после запятой. Округление выполняется перед применением форматирования данных. Пример: round (125, -1) Результат: 130 soundex ( string_expression ) Возвращает четырехзначную строку, которая является звуковым представлением слов в строке "string_expression".
Функции приведения SQL Server cast_float ( expression ) Возвращает значение "expression" в виде десятичного числа. cast_real ( expression ) Возвращает значение "expression" в виде действительного числа. cast_smallint ( expression ) Возвращает значение "expression" в виде small integer. cast_integer ( expression ) Возвращает значение "expression" в виде целого числа. Пример: integer ( 84.95 ) Результат: 85 cast_timestamp ( expression ) Возвращает значение "expression" в виде данных типа datetime. cast_char ( expression ) Возвращает значение "expression" в виде символа. Будет возвращено предельное число символов, равное 30. cast_varchar ( expression ) Возвращает значение "expression" в виде переменной.
Математические функции SQL Server log ( numeric_expression ) Возвращает натуральный логарифм значения "numeric_expression". log10 ( numeric_expression ) Возвращает десятичный логарифм значения "numeric_expression". pi( ) Возвращает число пи в виде значения с плавающей запятой. rand ( integer_expression ) Создает случайное число, используя в качестве начального значения "integer_expression".
Тригонометрические функции SQL Server acos ( numeric_expression ) Возвращает арккосинус "numeric_expression" в радианах. Арккосинус – это угол, косинус которого равен "numeric_expression". asin ( numeric_expression ) Возвращает арксинус "numeric_expression" в радианах. Арксинус – это угол, синус которого равен "numeric_expression". atan ( numeric_expression ) Возвращает арктангенс "numeric_expression" в радианах. Арктангенс – это угол, тангенс которого равен "numeric_expression1". atn2 ( numeric_expression1, numeric_expression2 ) Возвращает арктангенс координат x и y, указанных соответственно в "numeric_expression1" и "numeric_expression2", в радианах. Арктангенс – это угол, тангенс которого равен "numeric_expression1". cos ( numeric_expression ) Возвращает косинус "numeric_expression", где "numeric_expression" – угол в радианах. cot ( numeric_expression ) Возвращает котангенс "numeric_expression", где "numeric_expression" – угол в радианах. degrees ( numeric_expression ) Возвращает количество градусов, преобразованное из "numeric_expression" радиан. radians ( numeric_expression ) Возвращает количество радиан, преобразованных из значения градусов "numeric_expression". sin ( numeric_expression ) Возвращает синус "numeric_expression", где "numeric_expression" – угол в радианах. tan ( numeric_expression ) Возвращает тангенс "numeric_expression", где "numeric_expression" – угол в радианах.