1.数学函数
GaussDB(DWS)仅支持两数值的按位与函数(bitand),不支持按位或(bitor)和按位异或函数(bitxor)。
除过正文所述数学函数外,GaussDB(DWS)还提供下列常用函数。
三角函数:tan (正切)、 cot (余切)、 atan/atan2 (反正切)、radians (角度转弧度)、 degrees (弧度转角度)
其他函数:random (生成随机数)、setseed (设置种子)、pi (“π”常量)、width_bucket (返回参数指定的桶)
GaussDB(for MySQL)中函数truncate按参数指定精度截取,与GaussDB(DWS)的函数trunc()等效。
2.字符处理函数
GaussDB(DWS)获取字符串长度的函数中,除过length()外,还提供bit_length (位数)、char_length/length (字符个数)、 lengthb/octet_length (字节数) 。
提取或截取子字符串的函数,除过left、right、substr外,还有substring/substrb (提取子串)、trim/btrim/ltrim/rtrim (删除子串)。
字符串拼接函数,除过concat、concat_ws外,还有rawcat()。
字符串替换/填充函数,除过replace外,还有overlay(替换子串)、lpad(在源string左侧填充至length长度)、 rpa d(右侧填充)。
查找子串位置信息的函数,除过instr外,还有position、strops。
函数split_part()是最常用的字符串分割函数,按分隔符参数分割源串string,返回第field个子字符串。
GaussDB(DWS)不仅提供字符串大小写转换upper、lower,还有initcap、format、convert,其中initcap转换为每个单词首字符大写,其他字母小写的形式。
GaussDB(DWS)提供一系列正则表达式处理函数,如,regexp_like(模式匹配)、regexp_substr(提取子串)、regexp_matches(所有匹配子串)、regexp_split_to_array/regexp_split_to_table(分割)、regexp_replace(替换)。
GaussDB(DWS)还提供repeat(源串string重复numbers次) 、chr(给定整型参数的ASCII字符)两个常用函数。
3.时间日期函数
GaussDB(DWS)不仅支持GaussDB(for MySQL)已有的时间域截取函数extract,还支持函数date_trunc、date_part。
GaussDB(DWS)提供日期时间有效性的检查函数isfinite。
获取特殊日期时间的函数中, GaussDB(DWS)不支持systimestamp,但有等效特殊日期值current_timestamp、函数clock_timestamp、pg_systimestamp(),还不支持unix_timestamp()、from_unixtime()、getutcdate()。
除此之外,提供下列特殊日期时间函数,
statement_timestamp/timeofday/transaction_timestamp(获取当前日期及时间)
last_day(d): 获取时间点d对应本月的最后一天的时间
next_day(x, y): 计算时间点x开始的下一个星期y的时间
GaussDB(for MySQL)设置休眠时间函数sleep(),等效于GaussDB(DWS)中的pg_sleep()。
另外, GaussDB(DWS)还提供其他的日期时间函数及特殊值:justify_days(interval):将时间间隔以30天为单位转换为月;justify_hours(interval):将时间间隔以24小时为单位转换为小时;age(timestamp, timestamp): 两个时间相减,如果参数2缺省,则与当前时间相减;current_date,current_date,current_time,current_timestamp,localtime,localtimestamp。
4.类型转换函数
除常用的转换函数cast()、convert()等外, GaussDB(for MySQL)的其他类型转换函数(像if、ifnull、nullif等)都划归到条件表达式函数中,用法与GaussDB(for MySQL)基本类似。
GaussDB(DWS)除过上文所涉及的常用函数外,与其丰富的数据类型对应,还提供一系列相应处理函数,比如,几何函数、网络地址函数、文本检索函数、UUID函数、JSON函数、HLL函数、SEQUENCE函数、数组函数、范围函数等。