From 8c2e317eb672fc11d00d44a9cf88712e78f7c586 Mon Sep 17 00:00:00 2001 From: akaError Date: Tue, 16 Jan 2024 03:47:33 +0000 Subject: [PATCH] bug:xor expr error when print --- src/sql/resolver/expr/ob_raw_expr_printer.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sql/resolver/expr/ob_raw_expr_printer.cpp b/src/sql/resolver/expr/ob_raw_expr_printer.cpp index 1f0d401e0b..5d20a41c28 100644 --- a/src/sql/resolver/expr/ob_raw_expr_printer.cpp +++ b/src/sql/resolver/expr/ob_raw_expr_printer.cpp @@ -496,6 +496,12 @@ int ObRawExprPrinter::print(ObOpRawExpr *expr) } case T_OP_AND: SET_SYMBOL_IF_EMPTY("and"); + case T_OP_XOR: + if (lib::is_mysql_mode()) { + SET_SYMBOL_IF_EMPTY("xor"); + } else { + SET_SYMBOL_IF_EMPTY("^"); + } case T_OP_OR: { SET_SYMBOL_IF_EMPTY("or"); // 这里孩子不一定为2, 比如a or (b or c) 会被改写为一个or含三个孩子 @@ -570,12 +576,6 @@ int ObRawExprPrinter::print(ObOpRawExpr *expr) SET_SYMBOL_IF_EMPTY("|"); case T_OP_BIT_XOR: SET_SYMBOL_IF_EMPTY("^"); - case T_OP_XOR: - if (lib::is_mysql_mode()) { - SET_SYMBOL_IF_EMPTY("xor"); - } else { - SET_SYMBOL_IF_EMPTY("^"); - } case T_OP_BIT_AND: SET_SYMBOL_IF_EMPTY("&"); case T_OP_REGEXP: