Package com.alibaba.druid.sql.ast.expr
Class SQLBinaryOpExpr
java.lang.Object
com.alibaba.druid.sql.ast.SQLObjectImpl
com.alibaba.druid.sql.ast.SQLExprImpl
com.alibaba.druid.sql.ast.expr.SQLBinaryOpExpr
- All Implemented Interfaces:
SQLDbTypedObject
,SQLExpr
,SQLObject
,SQLReplaceable
,Serializable
,Cloneable
,Comparable<SQLBinaryOpExpr>
public class SQLBinaryOpExpr
extends SQLExprImpl
implements SQLReplaceable, Serializable, SQLDbTypedObject, Comparable<SQLBinaryOpExpr>
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected DbType
protected SQLExpr
protected SQLBinaryOperator
protected SQLExpr
Fields inherited from class com.alibaba.druid.sql.ast.SQLObjectImpl
attributes, hint, parent, sourceColumn, sourceLine
-
Constructor Summary
ConstructorDescriptionSQLBinaryOpExpr
(DbType dbType) SQLBinaryOpExpr
(SQLExpr left, SQLBinaryOperator operator, SQLExpr right) SQLBinaryOpExpr
(SQLExpr left, SQLBinaryOperator operator, SQLExpr right, DbType dbType) SQLBinaryOpExpr
(SQLExpr left, SQLExpr right, SQLBinaryOperator operator) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
accept0
(SQLASTVisitor visitor) static SQLExpr
static SQLExpr
static SQLExpr
andIfNotExists
(SQLExpr a, SQLExpr b) clone()
static SQLExpr
combine
(List<? extends SQLExpr> items, SQLBinaryOperator op) int
boolean
conditionContainsColumn
(String column) boolean
conditionContainsTable
(String alias) static SQLBinaryOpExpr
conditionEq
(String column, int value) static SQLBinaryOpExpr
conditionEq
(String column, String value) static SQLBinaryOpExpr
conditionLike
(String column, SQLExpr value) static SQLBinaryOpExpr
conditionLike
(String column, String value) boolean
static SQLBinaryOpExpr
boolean
equals
(SQLBinaryOpExpr other) boolean
boolean
equalsIgoreOrder
(SQLBinaryOpExpr other) getLeft()
only for parameterized outputgetRight()
int
hashCode()
static boolean
boolean
boolean
boolean
boolean
boolean
static SQLBinaryOpExpr
static SQLBinaryOpExpr
static boolean
boolean
static SQLBinaryOpExpr
only for parameterized outputstatic SQLExpr
static SQLExpr
boolean
void
void
void
setOperator
(SQLBinaryOperator operator) void
setParenthesized
(boolean parenthesized) void
split
(SQLExpr x, SQLBinaryOperator op) static void
split
(List<SQLExpr> outList, SQLExpr expr, SQLBinaryOperator op) toString()
Methods inherited from class com.alibaba.druid.sql.ast.SQLObjectImpl
accept, acceptChild, acceptChild, addAfterComment, addAfterComment, addBeforeComment, addBeforeComment, containsAttribute, getAfterCommentsDirect, getAttribute, getAttributes, getAttributesDirect, getBeforeCommentsDirect, getHint, getParent, getSourceColumn, getSourceLine, hasAfterComment, hasBeforeComment, output, output, putAttribute, setHint, setParent, setSourceColumn, setSourceLine
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.alibaba.druid.sql.ast.SQLObject
accept, addAfterComment, addAfterComment, addBeforeComment, addBeforeComment, containsAttribute, getAfterCommentsDirect, getAttribute, getAttributes, getAttributesDirect, getBeforeCommentsDirect, getParent, hasAfterComment, hasBeforeComment, output, output, putAttribute, setParent
-
Field Details
-
left
-
right
-
operator
-
dbType
-
mergedList
-
-
Constructor Details
-
SQLBinaryOpExpr
public SQLBinaryOpExpr() -
SQLBinaryOpExpr
-
SQLBinaryOpExpr
-
SQLBinaryOpExpr
-
SQLBinaryOpExpr
-
-
Method Details
-
getDbType
- Specified by:
getDbType
in interfaceSQLDbTypedObject
-
setDbType
-
getLeft
-
setLeft
-
getRight
-
setRight
-
getOperator
-
setOperator
-
isParenthesized
public boolean isParenthesized() -
setParenthesized
public void setParenthesized(boolean parenthesized) -
accept0
- Specified by:
accept0
in classSQLObjectImpl
-
getChildren
- Specified by:
getChildren
in interfaceSQLExpr
- Overrides:
getChildren
in classSQLExprImpl
-
hashCode
public int hashCode()- Specified by:
hashCode
in classSQLExprImpl
-
equals
- Specified by:
equals
in classSQLExprImpl
-
equals
-
equalsIgoreOrder
-
clone
-
toString
- Overrides:
toString
in classSQLObjectImpl
-
combine
-
split
-
split
-
split
-
split
-
and
-
and
-
or
-
or
-
andIfNotExists
-
isNotNull
-
isNull
-
replace
- Specified by:
replace
in interfaceSQLReplaceable
-
other
-
contains
-
computeDataType
- Specified by:
computeDataType
in interfaceSQLExpr
- Overrides:
computeDataType
in classSQLExprImpl
-
conditionContainsTable
-
conditionContainsColumn
-
merge
only for parameterized output- Parameters:
v
-x
-- Returns:
-
getMergedList
only for parameterized output- Returns:
-
isOr
-
isAnd
-
isLeftNameAndRightLiteral
public boolean isLeftNameAndRightLiteral() -
isLeftFunctionAndRightLiteral
public boolean isLeftFunctionAndRightLiteral() -
isNameAndLiteral
public boolean isNameAndLiteral() -
isBothName
public boolean isBothName() -
compareTo
- Specified by:
compareTo
in interfaceComparable<SQLBinaryOpExpr>
-
isLeftLiteralAndRightName
public boolean isLeftLiteralAndRightName() -
conditionEq
-
conditionEq
-
conditionLike
-
conditionLike
-
eq
-