Unified Functions
函数调用可以使用函数的名字,也可以使用函数的别名。
由于:1. Hana数据集支持的函数为Hana函数,暂未与Unified Function兼容;2. HBase数据集支持的函数比较特殊。因此下表仅列列举MySQL和ElasticSearch与Unified Functions的兼容性,Hana以及HBase支持的函数在下述章节单独列举。
MySQL/ElasticSearch 支持的函数
聚合函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
聚合函数 | sum | SUM(column): 对某列进行求和 | 支持 | 支持 | |
聚合函数 | count | COUNT(column): 计算行数/n COUNT(DISTINCT column): 计算去重后的行数 | 支持 | 支持 | |
聚合函数 | max | MAX(column): 计算某列的最大值 | 支持 | 支持 | |
聚合函数 | min | MIN(column): 计算某列的最小值 | 支持 | 支持 | |
聚合函数 | avg | AVG(column): 计算某列的平均值 | 支持 | 支持 | |
聚合函数 | uniq | uniq(c1): 聚合函数,估算去重后的行数,类似 COUNT(DISTINCT c1), 但是采用估算算法(如果有的引擎不支持估算,则等于COUNT(DISTINCT c1)) | 支持 | 支持 | |
聚合函数 | sumif | sumIf(c1, bool_expression): 聚合函数, 计算满足 bool_expression 表达式 的c1列的加和 | 支持 | 不支持 | |
聚合函数 | countif | countIf(c1, bool_expression): 聚合函数, 计算满足 bool_expression 表达式 的c1列的行数 | 支持 | 不支持 | |
聚合函数 | avgif | avgIf(c1, bool_expression): 聚合函数, 计算满足 bool_expression 表达式 的c1列的平均值 | 支持 | 不支持 | |
聚合函数 | any_value | any_value(c1): 聚合函数, 获取分组里c1中的任意一行 | 支持 | 不支持 | |
聚合函数 | stddev_pop | stddev_pop(c1): 聚合函数,统计总体标准差 | stddev、stddevpop | 支持 | 不支持 |
聚合函数 | stddev_samp | stddev_samp(c1): 聚合函数,统计样本标准差 | stddevsamp | 支持 | 不支持 |
聚合函数 | var_pop | var_pop(c1): 聚合函数,统计总体方差 | varsamp | 支持 | 不支持 |
聚合函数 | var_samp | var_samp(c1): 聚合函数,统计样本方差 | varsamp | 支持 | 不支持 |
日期函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
日期函数 | date | DATE(column): 将column转化为date类型。如果column为字符串,需要格式是yyyy-MM-dd。 无法转换,则返回NULL | 支持 | 支持 | |
日期函数 | adddate | addDate(date, INTERVAL n DAY/WEEK/MONTH/QUARTER/YEAR/HOUR/MINUTE/SECOND): 将日期date加上n个时间区间。 n可以为负数 | date_add | 支持 | 支持 |
日期函数 | datediff | dateDiff(startDate, endDate): 计算startDate -> endDate之间相隔的天数, 注意和mysql语义不一致, 此处语义是 dateDiff(startDate, endDate) = endDate-startDate, mysql则是反之 | daydiff | 支持 | 支持 |
日期函数 | weekdiff | weekDiff(startDate, endDate): 计算startDate -> endDate之间相隔的周数,按周1是一周的第一天计算 | 支持 | 支持 | |
日期函数 | monthdiff | monthDiff(startDate, endDate): 计算startDate -> endDate之间相隔的月数 | 支持 | 支持 | |
日期函数 | quarterdiff | quarterDiff(startDate, endDate): 计算startDate -> endDate之间相隔的季度数 | 支持 | 不支持 | |
日期函数 | yeardiff | yearDiff(startDate, endDate): 计算startDate -> endDate之间相隔的年数 | 支持 | 不支持 | |
日期函数 | unix_timestamp | unix_timestamp(datetime): 返回datetime对应的timestamp, 使用引擎服务端的时区 | tounixtimestamp | 支持 | 支持 |
日期函数 | from_unixtime | from_unixtime(timestamp): 将timestamp转化成datetime | 支持 | 支持 | |
日期函数 | now | now(): 返回当前日期和时间,类型是datetime | 支持 | 支持 | |
日期函数 | current_date | current_date(): 返回当前日期,类型是date | curdate、today | 支持 | 支持 |
日期函数 | yesterday | yesterday(): 返回昨天的日期,类型是date | 支持 | 不支持 | |
日期函数 | subdate | subdate(date, INTERVAL n DAY/WEEK/MONTH/QUARTER/YEAR/HOUR/MINUTE/SECOND): 将日期date减去n个时间区间。 | date_sub | 支持 | 支持 |
日期函数 | adddays | addDays(date, n): 将日期date加上n天。 n可以为负数 | 支持 | 支持 | |
日期函数 | addmonths | addMonths(date, n): 将日期date加上n月。 n可以为负数 | 支持 | 支持 | |
日期函数 | addweeks | addWeeks(date, n): 将日期date加上n周。 n可以为负数 | 支持 | 不支持 | |
日期函数 | addquarters | addQuarters(date, n): 将日期date加上n个季度。 n可以为负数 | 支持 | 不支持 | |
日期函数 | addYears | addYears(date, n): 将日期date加上n年。 n可以为负数 | 支持 | 不支持 | |
日期函数 | addHours | addHours(datetime, n): 将日期时间datetime加上n小时。 n可以为负数 | 支持 | 不支持 | |
日期函数 | addMinutes | addMinutes(datetime, n): 将日期时间date加上n分钟。 n可以为负数 | 支持 | 不支持 | |
日期函数 | addSeconds | addSeconds(datetime, n): 将日期时间date加上n秒。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractdays | subtractDays(date, n): 将日期date减去n天。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractweeks | subtractWeeks(date, n): 将日期date减去n周。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractmonths | subtractMonths(date, n): 将日期date减去n月。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractquarters | subtractQuarters(date, n): 将日期date减去n个季度。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractYears | subtractYears(date, n): 将日期date减去n年。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractHours | subtractHours(datetime, n): 将日期时间datetime减去n小时。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractMinutes | subtractMinutes(datetime, n): 将日期时间datetime减去n分钟。 n可以为负数 | 支持 | 不支持 | |
日期函数 | subtractSeconds | subtractSeconds(datetime, n): 将日期时间datetime减去n秒。 n可以为负数 | 支持 | 不支持 | |
日期函数 | year | year(datetime date string): 返回日期或时间戳字符串的年份,类型是Int | toyear | 支持 | 不支持 |
日期函数 | quarter | quarter(datetime date string): 返回日期或时间戳字符串的季度,类型是Int | toquarter | 支持 | 不支持 |
日期函数 | month | month(datetime date string): 返回日期或时间戳字符串的月份,类型是Int | tomonth | 支持 | 不支持 |
日期函数 | week | week(datetime date string, [,mode]): 返回日期或时间戳字符串的周数,类型是Int. mode语义参见mysql week函数,支持0-7,不填则默认为0 | toweek | 支持 | 不支持 |
日期函数 | day | day(datetime date string): 返回日期或时间戳字符串的天,类型是Int, 别名: DAYOFMONTH | dayofmonth、todayofmonth | 支持 | 不支持 |
日期函数 | dayofweek | dayOfWeek(datetime date string): 返回日期或时间戳字符串在一周中的天数,类型是Int | todayofweek | 支持 | 不支持 |
日期函数 | dayofyear | dayOfYear(datetime date string): 返回日期或时间戳字符串在一年中的天数,类型是Int | todayofyear | 支持 | 不支持 |
日期函数 | hour | hour(datetime string): 返回日期或时间戳字符串的小时,类型是Int | tohour | 支持 | 支持 |
日期函数 | minute | minute(datetime date string): 返回日期或时间戳字符串的分钟,类型是Int | tominute | 支持 | 不支持 |
日期函数 | second | second(datetime date string): 返回日期或时间戳字符串的秒数,类型是Int | tosecond | 支持 | 不支持 |
日期函数 | last_day | last_day(data datetime string): 返回日期所属月份的最后一天,类型是Date。例如: last_day('2020-01-13') = '2020-01-31' | 支持 | 支持 | |
日期函数 | tomonday | toMonday(date or datetime, day_of_week): 将Date或DateTime向前取整到本周的星期一。 返回Date类型。 | 支持 | 不支持 | |
日期函数 | torelativeyearnum | toRelativeYearNum(date datetime string): 返回从过去固定时间点到日期的年数 | 支持 | 不支持 | |
日期函数 | torelativemonthnum | toRelativeMonthNum(date datetime string): 返回从过去固定时间点到日期的月份数 | 支持 | 不支持 | |
日期函数 | torelativeweeknum | toRelativeWeekNum(date datetime string): 返回从过去固定时间点到日期的周数 | 支持 | 不支持 | |
日期函数 | torelativedaynum | toRelativeDayNum(date datetime string): 返回从过去固定时间点到日期的天数 | 支持 | 不支持 | |
日期函数 | date_format | date_format(data datetime string, string): 根据给定的格式字符串格式化时间。注意:格式是一个常量表达式,具体标识符支持%Y、%y、%m、%d、%e、%H、%I、%i、%S和%%,语义和mysql保持一致。 | formatDateTime | 支持 | 不支持 |
日期函数 | str_to_date | str_to_date(string, string):将字符串按照格式字符串提取日期。 | 支持 | 不支持 | |
日期函数 | str_to_datetime | str_to_datetime(string, string):将字符串按照格式字符串提取日期时间。 | 支持 | 不支持 | |
日期函数 | toyyyymm | toYYYYMM(date or datetime): 将日期转成yyyyMM, 返回类型是int。例如toYYYYMM('2020-01-01') = 202001) | 支持 | 支持 | |
日期函数 | toStartOfYear | toStartOfYear(date or datetime): 将日期向下取整到年, 返回类型是date。 | 支持 | 支持 | |
日期函数 | toStartOfMonth | toStartOfMonth(date or datetime): 将日期向下取整到月, 返回类型是date。 | 支持 | 支持 | |
日期函数 | toStartOfWeek | toStartOfWeek(date or datetime): 将日期向下取整到星期一 | 支持 | 不支持 | |
日期函数 | toStartOfDay | toStartOfDay(date or datetime): 将日期向下取整到天, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfHour | toStartOfHour(date or datetime): 将日期向下取整到小时, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfMinute | toStartOfMinute(date or datetime): 将日期向下取整到分钟, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfFiveMinute | toStartOfFiveMinute(date or datetime): 将日期向下取整到五分钟, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfTenMinutes | toStartOfTenMinutes(date or datetime): 将日期向下取整到十分钟, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfFifteenMinutes | toStartOfFifteenMinutes(date or datetime): 将日期向下取整到十五分钟, 返回类型是datetime。 | 支持 | 支持 | |
日期函数 | toStartOfInterval | toStartOfInterval(date or datetime, INTERVAL n SECOND/MINUTE/HOUR/DAY/WEEK/MONTH/YEAR): toStartOfXX系列函数的通用版本,如toStartOfInterval(t, INTERVAL 1 year)等价于toStartOfYear(t) | 支持 | 不支持 | |
日期函数 | timeSlot | timeSlot(date or datetime): 将日期向下取整到半小时, 返回类型是datetime。 | 支持 | 不支持 |
Number 函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
Number函数 | floor | FLOOR(number, [digits]): 对某列向下取整, 如果传了digits, 则表示保留digits位小数,向下取最大数, 例如: FLOOR(1.99, 1) = 1.9 | 支持 | 支持 | |
Number函数 | ceil | CEIL(number, [digits]): 对某列向上取整, 如果传了digits, 表示保留digits位小数,向上取最小数。例如: CEIL(1.91, 1) = 2.0 | ceiling | 支持 | 支持 |
Number函数 | round | ROUND(number, [digits]): 对某列四舍五入。如果传了digits,表示保留digits位小数并进行四舍五入 | 支持 | 支持 | |
Number函数 | greatest | GREATEST(c1, c2...): 计算c1, c2的最大值。 | 支持 | 支持 | |
Number函数 | rand | RAND(): 返回一个随机整数 | random | 支持 | 支持 |
Number函数 | abs | abs(number): 给 number 的绝对值 | 支持 | 支持 | |
Number函数 | exp | exp(n): 计算 e 的n次方, e为自然底数,大约是2.718281 | 支持 | 支持 | |
Number函数 | least | least(c1, c2...): 计算c1, c2的最小值。 | 支持 | 支持 | |
Number函数 | mod | MOD(a, b): 计算 a % b的值,8 % 3 = 2, 3.1 % 2 = 1.1, -3.1 % 2 = -1.1 | modulo | 支持 | 支持 |
Number函数 | pow | POW(x, y): 计算 x 的 y 次方 | power | 支持 | 支持 |
Number函数 | sqrt | sqrt(x): 计算x的平方根 | 支持 | 支持 | |
Number函数 | truncate | truncate(x, n): 数字 x 保留 n 位小数, 向0舍入. truncate(11.111, 1) = 11.1, truncate(-11.111, 1) = -11.1 | 支持 | 支持 | |
Number函数 | isnan | isNaN(x): 判断数字是否是 NaN, 如果是则返回0,否则返回1 | 支持 | 支持 | |
Number函数 | isinfinite | isInfinite(x): 判断数字 x 是否是无限大,或者无限小(infinite), 如果是,则返回1,否则0 | 支持 | 支持 | |
Number函数 | isfinite | isFinite(x): 如果 x 不是infinite,也不是nan, 则返回1,否则返回0 | 支持 | 支持 | |
Number函数 | sin | sin(x): 返回x的正弦值 | 支持 | 不支持 | |
Number函数 | cos | cos(x): 返回x的余弦值 | 支持 | 不支持 | |
Number函数 | tan | tan(x): 返回x的正切值 | 支持 | 不支持 | |
Number函数 | asin | asin(x): 返回x的反正弦值 | 支持 | 不支持 | |
Number函数 | acos | acos(x): 返回x的反余弦值 | 支持 | 不支持 | |
Number函数 | atan | atan(x): 返回x的反正切值 | 支持 | 不支持 | |
Number函数 | ln | ln(x): 返回x的自然对数 | 支持 | 不支持 | |
Number函数 | log2 | log(x): 返回x的以2为底的对数 | 支持 | 不支持 | |
Number函数 | log10 | log10(x): 返回x的以10为底的对数 | 支持 | 不支持 | |
Number函数 | pi | pi(): 返回π | 支持 | 不支持 |
字符串函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
字符串函数 | concat | CONCAT(c1, c2, c3,...): 将多个字符串进行拼接 | 支持 | 支持 | |
字符串函数 | concat_ws | CONCAT_WS(separator, c1, c2, c3,...): 将多个字符串进行拼接, 使用separator当分隔符 | 支持 | 支持 | |
字符串函数 | substring | substring(str, offset, length): 截取字符串 str 的子串, offset 从 1开始取值, 可以为负数。length为正数 | substr | 支持 | 支持 |
字符串函数 | length | length(str): 获取字符串所占的字节数(不一定等于字符数, 比如一个中文字符占多个字节) | 支持 | 支持 | |
字符串函数 | replace | replace(str, from_str, to_str): 替换str中的from_str为to_str, 如replace('1.3.4', '.', '') = '134' | 支持 | 支持 | |
字符串函数 | left | left(str, len): 返回字符串str最左边的 len 个字符, left('foobarbar', 4) = 'foob' | 支持 | 支持 | |
字符串函数 | trim | trim(str): 去掉字符串头部和尾部连续的空白字符串 | 支持 | 支持 | |
字符串函数 | ltrim | ltrim(str): 去掉字符串头部连续的空白字符串 | trimleft | 支持 | 支持 |
字符串函数 | rtrim | rtrim(str): 去掉字符串尾部连续的空白字符串 | trimright | 支持 | 支持 |
字符串函数 | strcmp | strcmp(str1, str2): 比较str1和str2,如果str1=str2,则返回0,如果str1>str2,则返回1, 如果str2>str1, 则返回-1 | 支持 | 支持 | |
字符串函数 | reverse | reverse(str): 将字符串str颠倒顺序. reverse('abc') = 'cba', reverse('你好') = '好你' | 支持 | 不支持 | |
字符串函数 | right | right(str, len): 返回字符串str最右边的 len 个字符, right('foobarbar', 4) = 'rbar' | 支持 | 支持 | |
字符串函数 | repeat | repeat(str, n): 将字符串str重复n次, repeat('abc', 3) = 'abcabcabc' | 支持 | 支持 | |
字符串函数 | locate | locate(substr, str): 返回str 里 substr的角标. locate('bc', 'abcd') = 2, 不存在则返回0 | 支持 | 支持 | |
字符串函数 | position | position(substr IN str): 返回str 里 substr的角标. position('bc' IN 'abc') = 2, 不存在则返回0 | 支持 | 支持 | |
字符串函数 | upper | upper(str): 将str转成大写, upper('abc') = 'ABC' | 支持 | 支持 | |
字符串函数 | lower | lower(str): 将str转成小写, upper('ABC') = 'abc' | 支持 | 支持 | |
字符串函数 | char_length | char_length(str): 获取字符串所占的字符数, UTF8字符占一个字符, char_length('abc样') = 4 | 支持 | 支持 | |
字符串函数 | space | space(n): 返回由n个空格组成的字符串 | 支持 | 不支持 | |
字符串函数 | lpad | lpad(String, len, pad_str): String左填充pad_str到长度为len,如果len小于String长度,则返回截取String到长度为len的字符串 | 支持 | 不支持 | |
字符串函数 | rpad | rpad(String, len, pad_str): String右填充pad_str到长度为len,如果len小于String长度,则返回截取String到长度为len的字符串 | 支持 | 不支持 | |
字符串函数 | empty | empty(String): 判断字符串是空为1,否则为0 | 支持 | 不支持 | |
字符串函数 | startswith | startsWith(String, prefix): 判断字符串是否以指定的前缀开头,是为1,否则为0 | 支持 | 不支持 | |
字符串函数 | endswith | endsWith(String, suffix): 判断字符串是否以指定的后缀结尾,是为1,否则为0 | 支持 | 不支持 | |
字符串函数 | find_in_set | find_in_set(str, strList): 返回str在strList中的位置,strList中以','分割字符串,不包含str返回0。示例:find_in_set('ab', 'abc,b,ab,c,def')=3 | 支持 | 不支持 |
类型转换函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
类型转换函数 | cast | CAST(value as dataType): 将 value 转化为 dataType 类型, dataType 为unified data type, 如int, float, string, bool等 | 支持 | 不支持 | |
类型转换函数 | tostring | toString(value): 给 value 转换成string | 支持 | 支持 | |
类型转换函数 | toint | toInt(value): 给 value 转换成 int | toint64 | 支持 | 支持 |
类型转换函数 | tofloat | toFloat(value): 给 value 转换成 float | tofloat64 | 支持 | 支持 |
类型转换函数 | todate | toDate(column): 将column转化为date类型 | 支持 | 支持 | |
类型转换函数 | todatetime | toDateTime(column): 将column转化为datetime类型 | 支持 | 支持 | |
类型转换函数 | todecimal | toDecimal(number, n): 给 number 保留 n 位小数 | todecimal64 | 支持 | 支持 |
JSON 函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
JSON函数 | jsonextractstring | JSONExtractString(json[, indices_or_keys]…): 提取JSON中的string. 举例: JSONExtractString('{"a":{"b": "c"}}', 'a', 'b') = 'c' | 支持 | 不支持 | |
JSON函数 | jsonextractint | JSONExtractInt(json[, indices_or_keys]…): 提取JSON中的int. 举例: JSONExtractString('{"a":{"b": 10}}', 'a', 'b') = 10 | 支持 | 不支持 | |
JSON函数 | jsonextractfloat | JSONExtractFloat(json[, indices_or_keys]…): 提取JSON中的float. 举例: JSONExtractString('{"a":{"b": 10.12}}', 'a', 'b') = 10.12 | 支持 | 不支持 | |
JSON函数 | jsonextractbool | JSONExtractBool(json[, indices_or_keys]…): 提取JSON中的bool. 举例: JSONExtractString('{"a":{"b": true}}', 'a', 'b') = true | 支持 | 不支持 | |
JSON函数 | jsonlength | JSONLength(json[, path[. path] ...]): 返回JSON数组或JSON对象的长度. 举例: SELECT JSONLength('{"a": "hello", "b": [-100, 200.0, 300]}') = 2, SELECT JSONLength('{"a": "hello", "b": [-100, 200.0, 300]}', '$.b') = 3 | json_length | 支持 | 不支持 |
JSON函数 | jsonvalid | JSONValid(json): 检查传递的字符串是有效的json. | json_valid | 支持 | 不支持 |
JSON函数 | jsontype | JSON_TYPE(json): 返回JSON值的类型. 举例: SELECT JSON_TYPE('{"a": "hello", "b": [-100, 200.0, 300]}') = 'Object' | json_type | 支持 | 不支持 |
JSON函数 | jsoncontains | JSONContains(target, candidate[, path]): 检查传JSON文档是否在路径中包含特定对象. 举例: SELECT JSONCONTAINS('[{"a": "hello", "b": [{"c":999}, 200.0, 300]}]', '999', '$[0].b[0].c') = 1 | json_contains | 支持 | 不支持 |
JSON函数 | jsonunquote | JSONUnquqte(json): 取消JSON值的引用 举例:SELECT JSONUnquqte('"abc"') = abc | json_unquote | 支持 | 不支持 |
GEO 函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
GEO函数 | st_geohash | ST_GeoHash(longitude, latitude, [max_length]): 将经纬度(longitude, latitude)编码成geohash字符串,其中第三个参数表示生成的字符串最大长度,可不填,默认12 | geohashencode | 支持 | 不支持 |
GEO函数 | st_pointfromgeohash | ST_PointFromGeoHash(geohash_str): 将geohash字符串 geohash_str 解码成经纬度,返回格式为字符串 POINT(lon lat) | 支持 | 不支持 | |
GEO函数 | st_latfromgeohash | ST_LatFromGeoHash(geohash_str): 将geohash字符串 geohash_str 解码提取其中的维度 | 支持 | 不支持 | |
GEO函数 | st_longfromgeohash | ST_LongFromGeoHash(geohash_str): 将geohash字符串 geohash_str 解码提取其中的经度 | 支持 | 不支持 |
Bit 函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
Bit函数 | bitand | bitAnd(a, b): 按位与ab, 等价于操作符& | 支持 | 不支持 | |
Bit函数 | bitor | bitOr(a, b): 按位或ab, 等价于操作符 | 支持 | ||
Bit函数 | bitxor | bitXor(a, b): 按位异或ab, 等价于操作符^ | 支持 | 不支持 | |
Bit函数 | bitnot | bitNot(a): 按位取反a, 等价于操作符^ | 支持 | 不支持 | |
Bit函数 | bitshiftleft | bitShiftLeft(a, b): 将a左移b位,等价于操作符<< | 支持 | 不支持 | |
Bit函数 | bitShiftRight | bitAnd(a, b): 将a右移b位,等价于操作符>> | 支持 | 不支持 |
其他函数
Topic | Name | Description | Alias | MySQL | ElasticSearch |
---|---|---|---|---|---|
其他函数 | if | if(bool_expression, then, else): 如果bool_expression为真,则返回then的值,否则返回else的值 | 支持 | 支持 | |
其他函数 | ifnull | IFNULL(expression, alt_value): 如果expression不为null, 则返回expression,否则返回alt_value | 支持 | 支持 | |
其他函数 | coalesce | coalesce(c1, c2, c2, ...): 返回第一个不为NULL的参数,如果参数都为NULL,则返回 NULL | 支持 | 支持 | |
其他函数 | isnull | ISNULL(expression): 如果expression为null, 则返回1, 否则返回0 | 支持 | 支持 |