Sybase
Sybase ascii ( string_expression ) Возвращает число, представляющее собой значение ASCII-кода крайнего слева символа строки "string_expression". Пример: ascii ( 'A' ) Результат: 65 char ( integer_expression ) Преобразует "integer_expression" в символьное значение. Тип char обычно используется в качестве инверсии для ASCII-кода, где значение "integer_expression" должно быть в интервале от 0 до 255. Если полученное значение является первым байтом многобайтного символа, то символ может оказаться неопределенным. charindex ( string_expression1 , string_expression2 ) Возвращает целое число, соответствующее начальной позиции строки "string_expression1", в "string_expression2". Если выражение "string_expression1" не найдено, возвращается ноль. Если строка "string_expression1" содержит символы подстановки, функция charindex воспримет их как литералы. concat ( string_expression1 ; string_expression2 ) Возвращает строку, являющуюся результатом конкатенации (объединения) строк "string_expression1" и "string_expression2". Пример: concat ( [Продажи (запрос)].[Сотрудники отд. продаж];[Имя]; [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] ) Результат: Возвращает имя и фамилию, например, Иван Петров. datalength ( string_expression ) Возвращает длину строки "string_expression" в байтах. dateadd ( ' { ' datepart ' } ' , integer_expression , date_expression ) Возвращает дату, явлющуюся результатом добавления "integer_expression" единиц, указанных в datepart (день, месяц, год), к "date_expression". Обратите внимание, что аргумент "datepart" должен быть заключен в фигурные скобки. Пример: dateadd ( {dd} , 16 , 1997-06-16 ) Результат: 2 июля 1997 года datediff ( ' { ' datepart ' } ' , date_expression1 , date_expression2 ) Возвращает число единиц, указанных в "datepart" (день, месяц, год), между "date_expression1" и "date_expression2". Обратите внимание, что аргумент "datepart" должен быть заключен в фигурные скобки. Пример: datediff ( {yy} , 1984-01-01 , 1997-01-01 ) Результат: 13 datename ( ' { ' datepart ' } ' , date_expression ) Возвращает часть "datepart" значения "date_expression" в виде строки ASCII. "Date_expression" может быть значением типа datetime, smalldatetime, date или time. Обратите внимание, что аргумент "datepart" должен быть заключен в фигурные скобки. Пример: datename ( {mm} , 1999-05-01 ) Результат: май datepart ( ' { ' datepart ' } ' , date_expression ) Возвращает часть "datepart" значения "date_expression" в виде целого значения. "Date_expression" может быть значением типа datetime, smalldatetime, date или time. Обратите внимание, что аргумент datepart должен быть заключен в фигурные скобки. Пример: datepart ( {mm} , 1999-05-01 ) Результат: 5 day ( date_expression ) Возвращает число месяца (целое число от 1 до 31) из "date_expression". difference ( string_expression1 , string_expression2 ) Возвращает целочисленное значение разницы между значениями, которые возвращает функция soundex, зависящая от источника данных, для "string_expression1" и "string_expression2". Возвращенное значение находится в диапазоне от 0 до 4, где 4 означает наиболее близкое соответствие. Обратите внимание, что значение 4 не означает, что строки полностью совпадают. Пример: difference ([План продаж (запрос)].[Сотрудники отд. продаж].[Фамилия],[Продажи (запрос)].[Розничные продавцы].[Имя контакта]) Результат: 0 Пример: difference ([План продаж (запрос)].[Сотрудники отд. продаж].[Имя],[План продаж (запрос)].[Сотрудники отд. продаж].[Имя]) Результат: 4 getdate () Возвращает текущую системную дату и системное время. left ( string_expression , integer_expression ) Возвращает крайние слева символы в количестве "integer_expression" из выражения "string_expression". Пример: left ( [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] , 3 ) Результат: Возвращает первые три символа каждой фамилии. ltrim ( string_expression ) Возвращает строку "string_expression" с удаленными начальными пробелами. month ( date_expression ) Возвращает значение месяца (от 1 до 12) из "date_expression". patindex ( string_expression1 , string_expression2 [ using {bytes|chars|characters} ] ) Возвращает целое число, представляющее собой начальное положение первого вхождения "string_expression1" в "string_expression2"; возвращает 0, если строка "string_expression1" не найдена. По умолчанию функция patindex возвращает смещение в виде числа символов. Смещение может возвращаться в байтах, если задать тип возврата в байтах. Символ подстановки % должен использоваться до и после шаблона в "string_expression1" за исключением случаев, когда выполняется поиск первого или последнего символов. rand ( integer_expression ) Возвращает случайное значение с плавающей запятой в диапазоне от 0 до 1 с использованием в качестве начального значения необязательного целого числа "integer_expression". replicate ( string_expression , integer_expression ) Возвращает строку, состоящую из выражения "string_expression", повторяющегося "integer_expression" раз. reverse ( string_expression ) Возвращает "string_expression" в обратном порядке. right ( string_expression , integer_expression ) Возвращает "integer_expression" правых символов выражения "string_expression". round ( numeric_expression, integer_expression ) Возвращает выражение "numeric_expression", округленное до ближайшего значения с "integer_expression" знаками после запятой. Округление выполняется перед применением форматирования данных. Пример: round (125, -1) Результат: 130 rtrim ( string_expression ) Возвращает строку "string_expression" с удаленными концевыми пробелами. Пример: rtrim ( [Продажи (запрос)].[Сотрудники отд. продаж].[Фамилия] ) Результат: Возвращает фамилии, удаляя все пробелы в конце. soundex ( string_expression ) Возвращает четырехзначный код soundex для строк символов, состоящих из непрерывной последовательности допустимых одно- или двухбайтовых латинских букв. space ( integer_expression ) Возвращает строку с "integer_expression" пробелов в один байт. str ( numeric_expression [ , integer_expression1 [ , integer_expression2 ] ] ) Возвращает строчное представление числа "numeric_expression". "Integer_expression1" - это длина возвращаемой строки, которая по умолчанию равна 10. "Integer_expression2" - это число знаков после запятой, которое по умолчанию равно 0. Оба эти значения являются необязательными. stuff ( string_expression1 , integer_expression1 , integer_expression2 , string_expression2 ) Удаляет "integer_expression2" символов из строки "string_expression1", начиная с положения "integer_expression1", и вставляет строку "string_expression2" в строку "string_expression1" в том же положении. Для удаления символов без вставки других символов значение "string_expression2" должно принимать значение null, а не " " (т. е. один пробел). substring ( string_expression , integer_expression1 , integer_expression2 ) Возвращает подстроку строки "string_expression", начиная с положения "integer_expression1". "Integer_expression2" определяет количество символов в подстроке. Пример: substring ( [Продажи (запрос)].[Сотрудники отд. продаж].[Код должности], 3 , 5 ) Результат: Возвращает символы с 3 по 7 в кодах должностей. to_unichar ( integer_expression ) Возвращает выражение типа unichar, значение которого равно "integer_expression". Если "integer_expression" находится в диапазоне 0xD800..0xDFFF, то выполнение операции прерывается. Если "integer_expression" находится в диапазоне 0..0xFFFF, то возвращается одно значение Unicode. Если "integer_expression" находится в диапазоне 0x10000..0x10FFFF, то возвращается суррогатная пара. uhighsurr ( string_expression , integer_expression ) Возвращает 1, если значение Unicode в "integer_expression" является старшей частью суррогатной пары (частью, которая должна быть первой в паре). В противном случае возвращается значение 0. Данная функция позволяет записать явный код для обработки суррогата. В частности, если подстрока начинается с символа Unicode и функция uhighsurr() возвращает значение "true", то извлекается подстрока, состоящая, как минимум, из двух значений Unicode, так как функция substr() не извлекает только 1 значение. Функция substr() не извлекает половину суррогатной пары. ulowsurr ( string_expression , integer_expression ) Возвращает 1, если значение Unicode в "integer_expression" является младшей частью суррогатной парой (частью, которая должна быть второй в паре). В противном случае возвращается значение 0. Данная функция позволяет явно использовать код для исправлений, выполненных функциями substr(), stuff() и right(). В частности, если подстрока заканчивается символом Unicode и функция ulowsurr() возвращает значение "true", то извлекается подстрока на 1 символ короче (или длиннее), так как функция substr() не извлекает строку, содержащую непарный суррогат. uscalar ( string_expression ) Возвращает скалярное значение для первого символа Unicode в строке "string_expression". Если первый символ не является старшей частью суррогатной пары, то значение будет находиться в диапазоне 0..0xFFFF. Если первый символ является старшей частью суррогатной пары, то второе значение должно быть ее младшей частью, а возвращаемое значение будет находиться в диапазоне 0x10000..0x10FFFF. Если данная функция вызывается для выражения символов Unicode, содержащего часть непарного суррогата, то выполнение операции будет прервано. year ( date_expression ) Возвращает год из date_expression.
Математические функции Sybase log ( numeric_expression ) Возвращает натуральный логарифм значения "numeric_expression". log10 ( numeric_expression ) Возвращает десятичный логарифм значения "numeric_expression". pi( ) Возвращает число пи в виде значения с плавающей запятой. sign ( numeric_expression ) Возвращает указатель знака выражения "numeric_expression": +1, если выражение numeric_exp положительное, 0, если оно равно нулю, или -1, если оно отрицательное.
Тригонометрические функции Sybase 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 ) Возвращает угол (в радианах), тангенс которого равен "numeric_expression1" / "numeric_expression2". cos ( numeric_expression ) Возвращает косинус "numeric_expression", где "numeric_expression" – угол в радианах. cot ( numeric_expression ) Возвращает котангенс "numeric_expression", где "numeric_expression" – угол в радианах. degrees ( numeric_expression ) Возвращает количество градусов, преобразованное из "numeric_expression" радиан. radians ( numeric_expression ) Возвращает угол, эквивалентный "numeric_expression" градусов. Результаты имеют тот же тип, что и "numeric_expression". Для выражений числового или десятичного типа результаты обладают внутренней точностью, равной 77 знакам, а также объединением, равным значению "numeric_expression". Если используется типа данных money, внутреннее преобразование в тип данных с плавающей запятой может вызвать потерю точности. sin ( numeric_expression ) Возвращает синус "numeric_expression", где "numeric_expression" – угол в радианах. tan ( numeric_expression ) Возвращает тангенс "numeric_expression", где "numeric_expression" – угол в радианах.