feat:[TS-5613] modify sql.y to move bool_expression to common expression
This commit is contained in:
parent
ee0f7a4d38
commit
9b6a094cac
|
@ -50,10 +50,14 @@
|
|||
%left AND.
|
||||
%left UNION ALL MINUS EXCEPT INTERSECT.
|
||||
%left NK_BITAND NK_BITOR NK_LSHIFT NK_RSHIFT.
|
||||
%left NK_LT NK_GT NK_LE NK_GE NK_EQ NK_NE LIKE MATCH NMATCH REGEXP CONTAINS BETWEEN IS IN.
|
||||
%left NK_PLUS NK_MINUS.
|
||||
%left NK_STAR NK_SLASH NK_REM.
|
||||
%left NK_CONCAT.
|
||||
|
||||
%right NOT.
|
||||
%left NK_ARROW.
|
||||
|
||||
%right INNER LEFT RIGHT FULL OUTER SEMI ANTI ASOF WINDOW JOIN ON WINDOW_OFFSET JLIMIT.
|
||||
|
||||
/************************************************ create/alter account *****************************************/
|
||||
|
@ -1454,13 +1458,13 @@ boolean_value_expression(A) ::= NOT(C) boolean_primary(B).
|
|||
A = createRawExprNodeExt(pCxt, &C, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_NOT, releaseRawExprNode(pCxt, B), NULL));
|
||||
}
|
||||
boolean_value_expression(A) ::=
|
||||
expr_or_subquery(B) OR expr_or_subquery(C). {
|
||||
boolean_value_expression(B) OR boolean_value_expression(C). {
|
||||
SToken s = getTokenFromRawExprNode(pCxt, B);
|
||||
SToken e = getTokenFromRawExprNode(pCxt, C);
|
||||
A = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_OR, releaseRawExprNode(pCxt, B), releaseRawExprNode(pCxt, C)));
|
||||
}
|
||||
boolean_value_expression(A) ::=
|
||||
expr_or_subquery(B) AND expr_or_subquery(C). {
|
||||
boolean_value_expression(B) AND boolean_value_expression(C). {
|
||||
SToken s = getTokenFromRawExprNode(pCxt, B);
|
||||
SToken e = getTokenFromRawExprNode(pCxt, C);
|
||||
A = createRawExprNodeExt(pCxt, &s, &e, createLogicConditionNode(pCxt, LOGIC_COND_TYPE_AND, releaseRawExprNode(pCxt, B), releaseRawExprNode(pCxt, C)));
|
||||
|
|
|
@ -68,10 +68,6 @@ class TDTestCase:
|
|||
tdSql.query(sql)
|
||||
tdSql.checkData(0,0,0)
|
||||
|
||||
sql = "select cast(2 and 1 as int) from t"
|
||||
tdSql.query(sql)
|
||||
tdSql.checkData(0,0,1)
|
||||
|
||||
def stop(self):
|
||||
tdSql.close()
|
||||
tdLog.success("%s successfully executed" % __file__)
|
||||
|
|
Loading…
Reference in New Issue