Функции приведения типов данных date2string ( date_expression ) Возвращает дату в виде строки в формате ГГГГ-ММ-ДД. time2string ( time_expression ) Возвращает время в виде строки в формате ЧЧ:ММ:СС.ДДД. timeTZ2string ( timeTZ_expression ) Возвращает значение времени и часового пояса в виде строки в формате ЧЧ:ММ:СС.ФФФ +ЧЧMM или ЧЧ:MM:СС.ФФФФФФФ -ЧЧМM. Пример: "-05:30" означает Гринвичское время минус 5 часов и 30 минут. timestamp2string ( timestamp_expression ) Возвращает временную отметку в виде строки в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС.ФФФФФФФ. timestampTZ2string ( timestamp_time_zone_expression ) Возвращает временную отметку с указанием часового пояса в виде строки в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС.ФФФФФФФ +ЧЧММ или ГГГГ-ММ-ДД ЧЧ:ММ:СС.ФФФ -ЧЧММ. DTinterval2string ( date_time_interval_expression ) Возвращает интервал даты и времени в виде строки в формате ДДДД ЧЧ:ММ:СС.ФФФФФФФ или -ДДДД ЧЧ:ММ:СС.ФФФ. DTinterval2stringAsTime ( date_time_interval_expression ) Возвращает интервал даты и времени в виде строки в формате ЧЧЧЧ:ММ:СС.ФФФФФФФ или ЧЧ:ММ:СС.ФФФ. Дни преобразуются в часы. int2DTinterval ( integer_expression , string_expression ) Преобразовывает целое число в интервал дат и времени. "String_expression" указывает то, что представляет собой "integer_expression": "ns" = наносекунды, "s" = секунды (по умолчанию), "m" = минуты, "h" = часы, "d" = дни. Пример: int2DTinterval (1020,"h") Результат: 42 дня, 12 часов Пример: int2DTinterval (1020,"s") Результат: 17 минут mapNumberToLetter ( string_expression , integer_expression ) Добавляет "integer_expression" к "string_expression". Пример: mapNumberToLetter ( 'a' , 1 ) Результат: b nullif ( string_expression1 , string_expression2 ) Возвращает значение null, если строка "string_expression1" совпадает со строкой "string_expression2" (без учета регистра); в противном случае возвращает "string_expression1". mod ( integer_expression1 , integer_expression2 ) Возвращает целочисленное значение, представляющее собой остаток (по модулю) при делении "integer_expression1" на "integer_expression2". power ( numeric_expression1 , numeric_expression2 ) Возвращает выражение "numeric_expression1", возведенное в степень "numeric_expression2". Пример: power ( 3 , 2 ) Результат: 9 int2YMinterval ( integer_expression , string_expression ) Преобразует "integer_expression" в интервал лет и месяцев. "String_expression" указывает то, что представляет собой "integer_expression": "y" = года, "m" = месяцы (по умолчанию). YMinterval2string ( year_month_interval_expression ) Возвращает "year_month_interval_expression" в виде строки в формате (ГГ ММ) or -(ГГ ММ). number2string ( numeric_expression ) Преобразовывает "numeric_expression" в строку, используя указатель формата %g (синтаксис C/C++). string2date ( string_expression ) Возвращает строку "string_expression" в виде даты в формате ГГГГ-ММ-ДД. Возвращает строку "string_expression" в виде интервала лет и месяцев в формате [-]ГГ ММ. string2YMinterval ( string_expression ) Возвращает строку "string_expression" в виде интервала дат и времени в формате [-]ДД ЧЧ:ММ[:СС[.ФФФ]]. string2DTinterval ( string_expression ) string2time ( string_expression ) Возвращает значение "string_expression" в виде времени в формате ЧЧ:ММ:СС.ФФФФФФФ. string2timestamp ( string_expression ) Возвращает значение "string_expression" в виде временной отметки в формате ГГГГ-ММ-ДД [В|в][пробел]+ ЧЧ:ММ:СС.ФФФФФФФ. string2timestampTZ ( string_expression ) Возвращает строку "string_expression" в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС.ФФФФФФФ +ЧЧММ или ГГГГ-ММ-ДД [В|в] ЧЧ:ММ:СС.ФФФ -ЧЧММ. string2double ( string_expression ) Возвращает число с плавающей запятой. Формат "String_expression": "[пробел] [знак] [цифры] [цифры] [ {d|D|e|E }[знак]цифры]" string2int64 ( string_expression ) Возвращает длинное целое число. Формат "String_expression": "[пробел] [{+|-}] [цифры]" string2int32 ( string_expression ) Возвращает целочисленное значение. Формат "String_expression": "[пробел] [{+|-}] [цифры]" date2timestamp ( date_expression ) Преобразует "date_expression" во временную отметку. Временная часть временной отметки будет равна нулю. timestamp2date ( timestamp_expression ) Преобразует "timestamp_expression" в дату. Временная часть временной отметки будет проигнорирована. timestamp2timestampTZ ( timestamp_expression ) Преобразует "timestamp_expression" во временную отметку с указанием часового пояса. Часть временной отметки с указанием часового пояса, относящаяся к смещению часового пояса, будет нулевой. timestampTZ2timestamp ( timestamp_time_zone_expression ) Преобразует "timestamp_time_zone_expression" во временную отметку. Часть временной отметки с часовым поясом, обозначающая смещение часового пояса, будет проигнорирована. date2timestampTZ ( date_expression ) Преобразует "date_expression" во временную отметку с указанием часового пояса. Части временной отметки, относящиеся к времени и часовому поясу, будут равны нулю. timestampTZ2date ( timestamp_time_zone_expression ) Преобразует "timestamp_time_zone_expression" в дату. Части временной отметки, обозначающие время ичасовой пояс, будут проигнорированы. _add_days ( timestamp_expression , integer_expression ) Возвращает дату и время, получаемые путем прибваления дней в количестве "integer_expression" к "timestamp_expression". Пример: _add_days ( 2007-01-14 00:00:00.000 , 3 ) Результат: 2007-01-17 00:00:00.000 _add_months ( timestamp_expression , integer_expression ) Возвращает параметр типа datetime, являющийся результатом прибавления месяцев в количестве "integer_expression" к "timestamp_expression". _add_years ( timestamp_expression , integer_expression ) Возвращает параметр типа datetime, являющийся результатом прибавления лет в количестве "integer_expression" к "timestamp_expression". _age ( timestamp_expression ) Возвращает число, полученное путем вычитания "timestamp_expression" из сегодняшней даты. Пример: _age ([Query1].[Date]), где [Query1].[Date] является 2 марта 2004, а сегодня 8 июля 2009 Результат: 50,406, где 5 - это количество лет, 04 - количество месяцев, 06 - количество дней. _day_of_week ( timestamp_expression , integer_expression ) Возвращает день недели (от одного до семи) для "timestamp_expression", где "integer_expression" указывает, какой день той недели является первым днем. Чтобы определить "integer_expression", выберите день недели и считайте с понедельника; например, если вы выбираете среду, то "integer_expression" будет 3, т.к. среда - это третий день, считая с понедельника. Пример: _day_of_week ( 2009-01-01 , 7 ), где 7 означает, что воскресенье - первый день недели. Результат: 5 _day_of_year ( timestamp_expression ) Возвращает порядковый номер дня в году в "timestamp_expression" (от 1 до 366). Это так называемый юлианский день. _days_between ( timestamp_expression1 , timestamp_expression2 ) Возвращает положительное или отрицательное число, представляющее собой количество дней между "timestamp_expression1" и "timestamp_expression2". Если "timestamp_expression1" < "timestamp_expression2", то результат будет отрицательным числом. _days_to_end_of_month ( timestamp_expression ) Возвращает число, которое является количеством оставшихся дней в месяце, представленном выражением "timestamp_expression". _first_of_month ( timestamp_expression ) Возвращает значение в формате datetime, которое является первым днем месяца, представленного выражением "timestamp_expression". Пример: _first_of_month ( 2009-05-04 00:00:00.000 ) Результат: Возвращает 2009-05-01 00:00:00.000 Пример: _first_of_month (current_date) Результат: Возвращает 1 июля 2009, если текущая дата 30 июля 2009. _last_of_month ( timestamp_expression ) Возвращает значение в формате даты и времени, которое соответствует последнему дню месяца, представленного выражением "timestamp_expression". _make_timestamp ( integer_expression1 , integer_expression2 , integer_expression3 ) Возвращает штамп времени, составленный из "integer_expression1" (год), "integer_expression2" (месяц) и "integer_expression3" (день). По умолчанию для части, относящейся ко времени, установлено значение: 00:00:00.000. _months_between ( timestamp_expression1 , timestamp_expression2 ) Возвращает положительное или отрицательное число, представляющее собой количество месяцев между "timestamp_expression1" и "timestamp_expression2". Если "timestamp_expression1" < "timestamp_expression2", то результат будет отрицательным числом. _week_of_year ( timestamp_expression ) Возвращает номер недели (1-53) в году, представленный "timestamp_expression". Согласно ISO 8601, первой неделей года считается первая неделя в году, содержащая четверг, что эквивалентно первой неделе, в которой наступает 4 января. Неделя начинается в понедельник (1-ый день) и завершается в воскресенье (7-ой день). _years_between ( timestamp_expression1 , timestamp_expression2 ) Возвращает положительное или отрицательное число, представляющее собой количество лет между "timestamp_expression1" и "timestamp_expression2". Если "timestamp_expression1" < "timestamp_expression2", то возвращается отрицательное значение. _ymdint_between ( timestamp_expression1 , timestamp_expression2 ) Возвращает число, представляющее собой разность между "timestamp_expression1" и "timestamp_expression2". Это значение имеет формат ГГММДД, где ГГ представляет количество лет, ММ – количество месяцев, а ДД – количество дней. Пример: _ymdint_between ( [Query1].[Date (close date)] , [Query1].[Date (ship date)] ), где [Query1].[Date (close date)] - 20 февраля 2004 г., а [Query1].[Date (ship date)] - 19 января 2004 г. Результат: 101, где 1 - число месяцев, 01 - число дней. abs ( numeric_expression ) Возвращает модуль "numeric_expression". Если значение "numeric_expression" - отрицательное, возвращается положительное значение. ceiling ( numeric_expression ) Возвращает наименьшее целое число, большее или равное "numeric_expression". exp ( numeric_expression ) Возвращает экспоненту 'e', возведенную в степень "numeric_expression". Экспонента 'e' - это основание натурального логарифма. Пример: exp ( 2 ) Результат: 7,389056 floor ( numeric_expression ) Возвращает наибольшее целое число, большее или равное "numeric_expression". ln ( numeric_expression ) Возвращает натуральный логарифм значения "numeric_expression". round ( numeric_expression , integer_expression ) Возвращает выражение "numeric_expression", округленное до ближайшего значения с числом значащих разрядов после запятой, равным "integer_expression". Если выражение "integer_expression" - отрицательное, то "numeric_expression" округляется до ближайшего значения до ближайшего абсолютного значения с точностью, равной "integer_expression" значащих цифр до запятой. Округление выполняется перед применением форматирования данных. Пример: round (125, -1) Результат: 130 sqrt ( numeric_expression ) Возвращает квадратный корень аргумента "numeric_expression". Значение "numeric_expression" не должно быть отрицательным. character_length ( string_expression ) Возвращает количество символов в строке "string_expression". extract ( date_part_expression , datetime_expression ) Возвращает целое число, представляющее значение "date_part_expression" в "datetime_expression". "Date_part_expression" может быть годом, месяцем, часом, минутой или секундой. Пример: extract ( 'year' ,string2timestamp( '2003-03-03 16:40:15.535' )) Результат: 2003 Пример: extract ( 'hour' ,string2timestamp( '2003-03-03 16:40:15.535' )) Результат: 16 lower ( string_expression ) Возвращает строку "string_expression", где все заглавные буквы преобразованы в строчные. Эта функция содержится в образце отчета "Передаваемый отчет по эффективности продаж" в пакете хранилища данных GO (запрос). octet_length ( string_expression ) Возвращает количеств байт в строке "string_expression". position ( string_expression1 , string_expression2 ) Возвращает целое число, представляющее начальное положение "string_expression1" в "string_expression2" Возвращает 0, если строка "string_expression1" не найдена. substring ( string_expression , integer_expression1 , integer_expression2 ) Возвращает подстроку строки "string_expression", начиная с позиции "integer_expression1" длиной "integer_expression1" символов, или до конца строки "string_expression2", если аргумент "integer_expression2" равен -1. Первый символ строки "string_expression" находится в позиции 1. substring ( [Sales (analysis)].[Sales staff].[Sales staff].[Sales staff].[Position code], 3 , 5 ) Результат: Возвращает символы с 3 по 7 в кодах должностей. trim ( trim_what_expression , match_character_expression , string_expression ) Возвращает строку "string_expression" без всех пробелов в начале и в конце строки или без символа, заданного выражением "match_character_expression". Аргумент "Trim_what_expression" может принимать значения: "leading", "trailing" или "both" (по умолчанию). "Match_character_expression" может быть пустой строкой (чтобы удалить пробелы) или может указывать символ, который нужно удалить. upper ( string_expression ) Возвращает строку "string_expression", где все строчные буквы преобразованы в заглавные. status ( expression ) Возвращает состояние выражения "expression". Возможные значения: 0 - Все в порядке, 1 - ноль, 2 - недоступно, 4 - деленное на ноль, 8 - переполнение, 16 - безопасность, 32 - ошибка, 64 - новый, 128 - пример, 256 - отложен.