数据类型转换函数 date2string ( 日期型表达式 ) 以 YYYY-MM-DD 格式返回日期字符串。 time2string ( 时间型表达式 ) 以 HH:MM:SS.FFF 格式返回时间作为字符串。 timeTZ2string ( 时区型表达式 ) 以 HH:MM:SS.FFF +HHMM 或 HH:MM:SS.FFFFFFF -HHMM 格式将包含时区的时间作为字符串返回。例如,-05:30 表示 GMT 减去 5 小时 30 分钟后的时区 timestamp2string ( 时间戳记型表达式 ) 以 YYYY-MM-DD HH:MM:SS.FFFFFFF 格式返回时间戳记作为字符串。 timestampTZ2string ( 时间戳记时区表达式 ) 以 YYYY-MM-DD HH:MM:SS.FFFFFFF +HHMM 或 YYYY-MM-DD HH:MM:SS.FFF -HHMM 格式返回带时区的时间戳记作为字符串。 DTinterval2string ( 日期时间间隔表达式 ) 以 DDDD HH:MM:SS.FFFFFFF 或 -DDDD HH:MM:SS.FFF 格式返回日期时间间隔字符串。 DTinterval2stringAsTime ( 日期时间间隔表达式 ) 以 HHHH:MM:SS.FFFFFFF 或 HH:MM:SS.FFF 格式返回日期时间间隔字符串。天数转换为小时数。 int2DTinterval ( 整数型表达式 , 字符串型表达式 ) 将整数转换为日期时间间隔。“字符串型表达式”指定“整数型表达式”代表的含义:“ns”= 纳秒数、“s”= 秒数(默认)、“m”= 分钟数、“h”= 小时数、“d”= 天数。 例如:int2DTinterval (1020,“h”) 结果:42 天 12 小时 示例:int2DTinterval (1020,"s") 结果:17 分钟 mapNumberToLetter ( 字符串型表达式 , 整数型表达式 ) 将“整数型表达式”添加至“字符串型表达式”。 示例:mapNumberToLetter ( 'a' , 1 ) 结果:b nullif ( 字符串型表达式 1 , 字符串型表达式 2 ) 如果“字符串型表达式 1”等于“字符串型表达式 2”(不区分大小写),那么将返回 null,否则将返回“字符串型表达式 1”。 mod ( 整数型表达式 1 , 整数型表达式 2 ) 返回表示“整数型表达式 1”/“整数型表达式 2”的余数(模)的整数值。 power ( 数字型表达式 1 , 数字型表达式 2 ) 返回“数字型表达式 1”的“数字型表达式 2”次幂。 示例:power ( 3 , 2 ) 结果:9 int2YMinterval ( 整数型表达式 , 字符串型表达式 ) 将“整数型表达式”转换为年月间隔。“字符串型表达式”指定“整数型表达式”代表的含义:“y”= 年数,“m”= 月数(默认)。 YMinterval2string ( 年月间隔表达式 ) 以 (YY MM) 或 -(YY MM) 格式返回“年月间隔表达式”作为字符串。 number2string ( 数字型表达式 ) 使用 %g 格式指示符(C/C++ 语法)将“数字型表达式”转换为字符串。 string2date ( 字符串型表达式 ) 以 YYYY-MM-DD 格式返回“字符串型表达式”作为日期。 以 [-]YY MM 格式返回“字符串型表达式”作为年月间隔。 string2YMinterval ( 字符串型表达式 ) 以 [-]DD HH:MM[:SS[.FFF]] 格式返回“字符串型表达式”作为日期时间间隔。 string2DTinterval ( 字符串型表达式 ) string2time ( 字符串型表达式 ) 以 HH:MM:SS.FFFFFFF 格式返回“字符串型表达式”作为时间。 string2timestamp ( 字符串型表达式 ) 以 YYYY-MM-DD [T|t|[空格]+] HH:MM:SS.FFFFFFF 格式返回“字符串型表达式”作为时间戳记。 string2timestampTZ ( 字符串型表达式 ) 以 YYYY-MM-DD HH:MM:SS.FFFFFFF +HHMM 或 YYYY-MM-DD [T|t] HH:MM:SS.FFF -HHMM 格式返回“字符串型表达式”。 string2double ( 字符串型表达式 ) 返回一个浮点数。“字符串型表达式”采用以下格式:“[空格] [符号] [数字] [数字] [ {d|D|e|E }[符号] [数字]” string2int64 ( 字符串型表达式 ) 返回一个长整型整数。“字符串型表达式”采用以下格式:“[空格] [{+|-}] [数字]” string2int32 ( 字符串型表达式 ) 返回一个整数。“字符串型表达式”采用以下格式:“[空格] [{+|-}] [数字]” date2timestamp ( 日期型表达式 ) 将“日期型表达式”转换为时间戳记。时间戳记的时间部分将等于零。 timestamp2date ( 时间戳记表达式 ) 将“时间戳记表达式”转换为日期。时间戳记的时间部分将被忽略。 timestamp2timestampTZ ( 时间戳记表达式 ) 将“时间戳记表达式”转换为带时区的时间戳记。带时区的时间戳记的偏移部分将为零。 timestampTZ2timestamp ( 时间戳记时区表达式 ) 将“时间戳记时区表达式”转换为时间戳记。带时区的时间戳记的偏移部分将被忽略。 date2timestampTZ ( 日期型表达式 ) 将“日期型表达式”转换为带时区的时间戳记。时间戳记的时间部分和时区部分将等于零。 timestampTZ2date ( 时间戳记时区表达式 ) 将“时间戳记时区表达式”转换为日期。时间戳记的时间部分和时区部分将被忽略。 _add_days ( 时间戳记表达式 , 整数型表达式 ) 返回向“时间戳记表达式”添加“整数型表达式”相应天数后所获得的日期时间。 示例:_add_days ( 2007-01-14 00:00:00.000 , 3 ) 结果:2007-01-17 00:00:00.000 _add_months ( 时间戳记表达式 , 整数型表达式 ) 返回向“时间戳记表达式”添加“整数型表达式”相应月份数后所获得的日期时间。 _add_years ( 时间戳记表达式 , 整数型表达式 ) 返回向“时间戳记表达式”添加“整数型表达式”相应年数后所得日期时间。 _age ( 时间戳记表达式 ) 返回从当前日期减去“时间戳记表达式”之后所得数值。 例如: _age ([查询1].[日期]),其中 [查询1].[日期] 是 3 月 2 日,今天是 2009 年 7 月 8 日。 结果:50,406,其中 5 是年数,04 是月数,06 是天数。 _day_of_week ( 时间戳记表达式 , 整数型表达式 ) 返回“时间戳记表达式”所表示的一周中的某天 (介于 1 到 7 之间),其中“整数型表达式”表示一周中的哪一天是第一天。要确定“整数型表达式”,请选择一周中的某天并从星期一开始算起,例如,如果您选择星期三,那么“整数型表达式”将为 3,因为从星期一算起,星期三是第三天。 示例:_day_of_week ( 2009-01-01 , 7 ),其中 7 表示星期日是一个星期的第一天。 结果:5 _day_of_year ( 时间戳记表达式 ) 返回“时间戳记表达式”所表示的某天在一年中的序数 (介于 1 到 366 之间)。亦称为儒略日。 _days_between ( 时间戳记表达式 1 , 时间戳记表达式 2 ) 返回一个表示“时间戳记表达式 1”与“时间戳记表达式 2”之间天数的正数或负数。如果“时间戳记表达式 1”<“时间戳记表达式 2”,那么结果将为负数。 _days_to_end_of_month ( 时间戳记表达式 ) 返回表示由“timestamp_expression”表示的月份中剩余天数的数值。 _first_of_month ( 时间戳记表达式 ) 返回一个日期时间,表示“时间戳记表达式”所代表的月份的第一天。 示例:_first_of_month ( 2009-05-04 00:00:00.000 ) 结果:返回 2009-05-01 00:00:00.000 例如:_first_of_month(当前日期) 结果:如果当前日期为 2009 年 7 月 30 日,那么将返回 2009 年 7 月 1 日。 _last_of_month ( 时间戳记表达式 ) 返回一个日期时间,表示“时间戳记表达式”所代表的月份的最后一天。 _make_timestamp ( 整数型表达式 1 , 整数型表达式 2 , 整数型表达式 3 ) 返回由“整数型表达式 1”(年)、“整数型表达式 2”(月)和“整数型表达式 3”(日)构成的时间戳记。时间部分默认值为 00:00:00.000。 _months_between ( 时间戳记表达式 1 , 时间戳记表达式 2 ) 返回表示“时间戳记表达式 1”和“时间戳记表达式 2”之间月数的正数或负数。如果“时间戳记表达式 1”<“时间戳记表达式 2”,那么结果将为负数。 _week_of_year ( 时间戳记表达式 ) 返回“时间戳记表达式”所表示的一年内的星期编号 (1-53)。依据 ISO 8601 标准,一年内的第一周是该年包含星期四的第一个周,即 1 月 4 日所在的第一个周。一周起始于星期一 (第一天),结束于星期日 (第七天)。 _years_between ( 时间戳记表达式 1 , 时间戳记表达式 2 ) 返回一个表示“时间戳记表达式 1”与“时间戳记表达式 2”之间年数的正整数或负整数。如果“时间戳记表达式 1”<“时间戳记表达式 2”,那么将返回负值。 _ymdint_between ( 时间戳记表达式 1 , 时间戳记表达式 2 ) 返回表示“timestamp_expression1”与“timestamp_expression2”之间差值的数字。此值的格式为 YYMMDD,其中 YY 表示年数,MM 表示月数,DD 表示天数。 示例:_ymdint_between ( [Query1].[Date (close date)] , [Query1].[Date (ship date)] ),其中 [Query1].[Date (close date)] 为 2004 年 2 月 20 日,[Query1].[Date (ship date)] 为 2004 年 1 月 19 日。 结果:101,其中 1 是月数,01 是天数。 abs ( 数字型表达式 ) 返回“数字型表达式”的绝对值。如果“数字型表达式”为负,那么返回正值。 ceiling ( 数字型表达式 ) 返回大于或等于“数字型表达式”的最小整数。 exp ( 数字型表达式 ) 返回常数“e”的“数字型表达式”次幂。常数“e”是自然对数的底数。 示例:exp ( 2 ) 结果:7.389056 floor ( 数字型表达式 ) 返回小于或等于“数字型表达式”的最大整数。 ln ( 数字型表达式 ) 返回“数字型表达式”的自然对数。 round ( 数字型表达式 , 整数型表达式 ) 返回将“numeric_expression”四舍五入至小数点后“integer_expression”个有效数字所得的最接近值。如果“integer_expression”为负数,那么“numeric_expression”会四舍五入为具有小数点前“integer_expression”个有效数字的最接近绝对值。会在应用数据格式化前进行四舍五入。 示例:round (125, -1) 结果:130 sqrt ( numeric_expression ) 返回“numeric_expression”的平方根。“Numeric_expression”不得为负值。 character_length ( 字符串型表达式 ) 返回“字符串型表达式”中包含的字符数。 extract ( 日期部分型表达式 , 日期时间型表达式 ) 返回一个表示“日期时间型表达式”中的“日期部分型表达式”的值的整数。“日期部分型表达式”可以是年、月、日、小时、分钟或秒。 示例:extract ( 'year' ,string2timestamp( '2003-03-03 16:40:15.535' )) 结果:2003 示例:extract ( 'hour' ,string2timestamp( '2003-03-03 16:40:15.535' )) 结果:16 lower ( 字符串型表达式 ) 返回已将所有大写字符转换为小写字符的“字符串型表达式”。此函数出现在“GO 数据仓库 (查询)”数据包中的“分类群发销售绩效报表”示样报表中。 octet_length ( 字符串型表达式 ) 返回“字符串型表达式”包含的字节数。 position ( 字符串型表达式 1 , 字符串型表达式 2 ) 返回表示“字符串型表达式 1”在“字符串型表达式 2”中的起始位置的整数值。如果未找到“字符串型表达式1”,那么返回 0。 substring ( 字符串型表达式 , 整数型表达式 1 , 整数型表达式 2 ) 返回“字符串型表达式”的子字符串,该子字符串的起始位置是“整数型表达式 1”,包含“整数型表达式 2”个字符,或者到“字符串型表达式”的末尾 (如果“整数型表达式 2”为 -1)。“字符串型表达式”中的第一个字符处在位置 1。 substring ( [Sales (analysis)].[Sales staff].[Sales staff].[Sales staff].[Position code], 3 , 5 ) 结果:返回位置代码的字符 3 至 7。 trim ( 截断内容表达式 , 匹配字符表达式 , 字符串型表达式 ) 返回截去任何开头和尾随空格的“字符串型表达式”,或者截去“匹配字符表达式”中指定的字符的“字符串型表达式”。“截断内容表达式”可以是“开头”或“尾随”,也可以是“二者”(默认)。如果要截去空格,那么“匹配字符表达式”应为空,否则可指定要截去的字符。 upper ( 字符串型表达式 ) 返回已将所有小写字符转换为大写字符的“字符串型表达式”。 status ( 表达式 ) 返回“表达式”的状态。可能的值为:0 - 确定、1 - 空值、2 - 不适用、4 - 除以零、8 - 溢出、16 - 安全、32 - 错误、64 - 新建、128 - 样本以及 256 - 暂挂。