逻辑运算支持说明

最近更新时间:2026-06-30 16:45:32

我的收藏
只读分析实例支持大部分 MySQL 的逻辑运算,但在部分场景下仍存在限制和不兼容。本文介绍只读分析实例对逻辑运算的支持情况,并列出每个运算符对入参数据类型的支持范围。文档中未列出的入参类型与使用方式均不支持。

逻辑运算支持类型

AND 运算

语法op1 AND op2
op1支持的数据类型:仅支持 bool。
op2支持的数据类型:仅支持 bool。

OR 运算

语法op1 OR op2
op1支持的数据类型:仅支持 bool。
op2支持的数据类型:仅支持 bool。

NOT 运算

语法NOT op1
op1支持的数据类型:仅支持 bool。

CASE 运算

语法CASE WHEN search_condition THEN statement_list ELSE statement_list END
search_condition 支持的数据类型:仅支持 bool。
statement_list 支持的数据类型:int、bigint、double、decimal、varchar、char。

IF 运算

语法IF(expr1, expr2, expr3)
expr1支持的数据类型:仅支持 bool。
expr2支持的数据类型:int、bigint、double、decimal、varchar、char。
expr3支持的数据类型:int、bigint、double、decimal、varchar、char。

IFNULL 运算

语法IFNULL(expr1, expr2)
expr1支持的数据类型:int、bigint、double、decimal、varchar、char。
expr2支持的数据类型:int、bigint、double、decimal、varchar、char。

ISNULL 运算

语法ISNULL(expr1)
expr1支持的数据类型:int、bigint、double、decimal、varchar、char。

IN 运算

语法expr IN (value, ...)
expr 支持的数据类型:int、bigint、double、decimal、varchar、char。
value 支持的数据类型:int、bigint、double、decimal、varchar、char。
注意:
在多 value 值的场景下,value 只能为常量,不能为变量或字段名。例如不支持 columnA IN (columnB, varA),只支持类似 columnA IN ('1', '2', '3') 的写法。
语法expr IN (sub_query)
expr 支持的数据类型:int、bigint、double、decimal、varchar、char。
sub_query 支持类型:子查询,且子查询的返回结果为单一字段。

LIKE 运算

语法expr LIKE pattern
expr 支持的数据类型:int、bigint、double、decimal、varchar、char。
pattern 支持的数据类型:int、bigint、double、decimal、varchar、char。
注意:
pattern 只支持常量,不支持变量或字段名。

COALESCE 运算

语法COALESCE(value, ...)
value 支持的数据类型:int、bigint、double、decimal、varchar、char。