| Modifier and Type | Class and Description |
|---|---|
| public static enum | CompareLike.
The type of comparison. |
| Modifier and Type | Field and Description |
|---|---|
| private static final int | |
| private final CompareMode | |
| private final String | |
| private Expression | |
| private boolean | |
| private boolean | |
| private boolean | |
| private boolean | |
| private Expression | |
| private final CompareLike. | |
| private static final int | |
| private final boolean | |
| private static final int | |
| private char[] | |
| private int | |
| private Pattern | |
| private String | |
| private int[] | patternTypes
one of MATCH / ONE / ANY |
| private Expression | |
| private boolean | shortcutToContains
indicates that we can shortcut the comparison and use contains |
| private boolean | shortcutToEndsWith
indicates that we can shortcut the comparison and use endsWith |
| private boolean | shortcutToStartsWith
indicates that we can shortcut the comparison and use startsWith |
| private final boolean |
| Access | Constructor and Description |
|---|---|
| public | CompareLike(Database db, Expression left, boolean not, boolean whenOperand, Expression right, Expression escape, CompareLike.
|
| public | CompareLike(CompareMode compareMode, String defaultEscape, Expression left, boolean not, boolean whenOperand, Expression right, Expression escape, CompareLike.
|
| Modifier and Type | Method and Description |
|---|---|
| private boolean | |
| private boolean | |
| private static boolean | |
| public void | createIndexConditions(SessionLocal
the session session, TableFilter the table filter filter)Overrides org. Create index conditions if possible and attach them to the table filter. |
| public int | getCost()
Implements abstract org. Estimate the cost to process the expression. |
| private static Character | |
| private Character | |
| public Expression | getNotIfPossible(SessionLocal
the session session)Overrides org. If it is possible, return the negated expression. |
| public Expression | getSubexpression(int
0-based index index)Overrides org. Returns subexpression with specified index. |
| public int | getSubexpressionCount()
Overrides org. Returns count of subexpressions. |
| public StringBuilder | getUnenclosedSQL(StringBuilder
string builder builder, int formatting flags sqlFlags)Implements abstract org. Get the SQL statement of this expression. |
| public Value | getValue(SessionLocal
the session session)Implements abstract org. Return the resulting value for the current row. |
| private Value | |
| public StringBuilder | getWhenSQL(StringBuilder
string builder builder, int formatting flags sqlFlags)Overrides org. Appends the SQL statement of this when operand to the specified builder. |
| public boolean | getWhenValue(SessionLocal
the session session, Value value on the left side left)Overrides org. Return the resulting value of when operand for the current row. |
| public void | |
| public boolean | isEverything(ExpressionVisitor
the visitor visitor)Implements abstract org. Check if this expression and all sub-expressions can fulfill a criteria. |
| private boolean | |
| public boolean | isWhenConditionOperand()
Overrides org. Returns whether this expression is a right side of condition in a when operand. |
| public void | mapColumns(ColumnResolver
the column resolver resolver, int the subquery nesting level level, int current state for nesting checks, initial value is
state)MAP_INITIALImplements abstract org. Map the columns of the resolver to expression columns. |
| public boolean | needParentheses()
Overrides org. Returns whether this expressions needs to be wrapped in parentheses when it is used as an argument of other expressions. |
| public Expression | optimize(SessionLocal
the session session)Implements abstract org. Try to optimize the expression. |
| public void | setEvaluatable(TableFilter
the table filter tableFilter, boolean true if the table filter can return value b)Implements abstract org. Tell the expression columns whether the table filter can return values now. |
| public boolean | |
| public boolean | |
| public void | updateAggregate(SessionLocal
the session session, int select stage stage)Implements abstract org. Update an aggregate value. |
| ANY | back to summary |
|---|---|
| private static final int ANY | |
| compareMode | back to summary |
|---|---|
| private final CompareMode compareMode | |
| defaultEscape | back to summary |
|---|---|
| private final String defaultEscape | |
| escape | back to summary |
|---|---|
| private Expression escape | |
| fastCompare | back to summary |
|---|---|
| private boolean fastCompare | |
| ignoreCase | back to summary |
|---|---|
| private boolean ignoreCase | |
| invalidPattern | back to summary |
|---|---|
| private boolean invalidPattern | |
| isInit | back to summary |
|---|---|
| private boolean isInit | |
| left | back to summary |
|---|---|
| private Expression left | |
| likeType | back to summary |
|---|---|
| private final CompareLike. | |
| MATCH | back to summary |
|---|---|
| private static final int MATCH | |
| not | back to summary |
|---|---|
| private final boolean not | |
| ONE | back to summary |
|---|---|
| private static final int ONE | |
| patternChars | back to summary |
|---|---|
| private char[] patternChars | |
| patternLength | back to summary |
|---|---|
| private int patternLength | |
| patternRegexp | back to summary |
|---|---|
| private Pattern patternRegexp | |
| patternString | back to summary |
|---|---|
| private String patternString | |
| patternTypes | back to summary |
|---|---|
| private int[] patternTypes one of MATCH / ONE / ANY | |
| right | back to summary |
|---|---|
| private Expression right | |
| shortcutToContains | back to summary |
|---|---|
| private boolean shortcutToContains indicates that we can shortcut the comparison and use contains | |
| shortcutToEndsWith | back to summary |
|---|---|
| private boolean shortcutToEndsWith indicates that we can shortcut the comparison and use endsWith | |
| shortcutToStartsWith | back to summary |
|---|---|
| private boolean shortcutToStartsWith indicates that we can shortcut the comparison and use startsWith | |
| whenOperand | back to summary |
|---|---|
| private final boolean whenOperand | |
| CompareLike | back to summary |
|---|---|
| public CompareLike(Database db, Expression left, boolean not, boolean whenOperand, Expression right, Expression escape, CompareLike. | |
| CompareLike | back to summary |
|---|---|
| public CompareLike(CompareMode compareMode, String defaultEscape, Expression left, boolean not, boolean whenOperand, Expression right, Expression escape, CompareLike. | |
| compare | back to summary |
|---|---|
| private boolean compare(char[] pattern, String s, int pi, int si) | |
| compareAt | back to summary |
|---|---|
| private boolean compareAt(String s, int pi, int si, int sLen, char[] pattern, int[] types) | |
| containsIgnoreCase | back to summary |
|---|---|
| private static boolean containsIgnoreCase(String src, String what) | |
| createIndexConditions | back to summary |
|---|---|
| public void createIndexConditions(SessionLocal session, TableFilter filter) Overrides org. Doc from org. Create index conditions if possible and attach them to the table filter.
| |
| getCost | back to summary |
|---|---|
| public int getCost() Implements abstract org. Doc from org. Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.
| |
| getEscapeChar | back to summary |
|---|---|
| private static Character getEscapeChar(String s) | |
| getEscapeChar | back to summary |
|---|---|
| private Character getEscapeChar(Value e) | |
| getNotIfPossible | back to summary |
|---|---|
| public Expression getNotIfPossible(SessionLocal session) Overrides org. Doc from org. If it is possible, return the negated expression. This is used to optimize NOT expressions: NOT ID>10 can be converted to ID<=10. Returns null if negating is not possible.
| |
| getSubexpression | back to summary |
|---|---|
| public Expression getSubexpression(int index) Overrides org. Doc from org. Returns subexpression with specified index.
| |
| getSubexpressionCount | back to summary |
|---|---|
| public int getSubexpressionCount() Overrides org. Doc from org. Returns count of subexpressions.
| |
| getUnenclosedSQL | back to summary |
|---|---|
| public StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags) Implements abstract org. Doc from org. Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.
| |
| getValue | back to summary |
|---|---|
| public Value getValue(SessionLocal session) Implements abstract org. Doc from org. Return the resulting value for the current row.
| |
| getValue | back to summary |
|---|---|
| private Value getValue(SessionLocal session, Value left) | |
| getWhenSQL | back to summary |
|---|---|
| public StringBuilder getWhenSQL(StringBuilder builder, int sqlFlags) Overrides org. Doc from org. Appends the SQL statement of this when operand to the specified builder.
| |
| getWhenValue | back to summary |
|---|---|
| public boolean getWhenValue(SessionLocal session, Value left) Overrides org. Doc from org. Return the resulting value of when operand for the current row.
| |
| initPattern | back to summary |
|---|---|
| public void initPattern(String p, Character escapeChar) Initializes the pattern. | |
| isEverything | back to summary |
|---|---|
| public boolean isEverything(ExpressionVisitor visitor) Implements abstract org. Doc from org. Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.
| |
| isFullMatch | back to summary |
|---|---|
| private boolean isFullMatch() | |
| isWhenConditionOperand | back to summary |
|---|---|
| public boolean isWhenConditionOperand() Overrides org. Doc from org. Returns whether this expression is a right side of condition in a when operand.
| |
| mapColumns | back to summary |
|---|---|
| public void mapColumns(ColumnResolver resolver, int level, int state) Implements abstract org. Doc from org. Map the columns of the resolver to expression columns.
| |
| needParentheses | back to summary |
|---|---|
| public boolean needParentheses() Overrides org. Doc from org. Returns whether this expressions needs to be wrapped in parentheses when it is used as an argument of other expressions.
| |
| optimize | back to summary |
|---|---|
| public Expression optimize(SessionLocal session) Implements abstract org. Doc from org. Try to optimize the expression.
| |
| setEvaluatable | back to summary |
|---|---|
| public void setEvaluatable(TableFilter tableFilter, boolean b) Implements abstract org. Doc from org. Tell the expression columns whether the table filter can return values now. This is used when optimizing the query.
| |
| test | back to summary |
|---|---|
| public boolean test(String testPattern, String value, char escapeChar) Test if the value matches the pattern. | |
| test | back to summary |
|---|---|
| public boolean test(String value) Test if the value matches the initialized pattern.
| |
| updateAggregate | back to summary |
|---|---|
| public void updateAggregate(SessionLocal session, int stage) Implements abstract org. Doc from org. Update an aggregate value. This method is called at statement execution time. It is usually called once for each row, but if the expression is used multiple times (for example in the column list, and as part of the HAVING expression) it is called multiple times - the row counter needs to be used to make sure the internal state is only updated once.
| |
| Modifier and Type | Field and Description |
|---|---|
| public static final CompareLike. | ILIKE
ILIKE (case-insensitive LIKE). |
| public static final CompareLike. | LIKE
LIKE. |
| public static final CompareLike. | REGEXP
REGEXP |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public static CompareLike. | |
| public static CompareLike. |
| ILIKE | back to summary |
|---|---|
| public static final CompareLike. ILIKE (case-insensitive LIKE). | |
| LIKE | back to summary |
|---|---|
| public static final CompareLike. LIKE. | |
| REGEXP | back to summary |
|---|---|
| public static final CompareLike. REGEXP | |
| LikeType | back to summary |
|---|---|
| private LikeType() | |
| valueOf | back to summary |
|---|---|
| public static CompareLike. | |
| values | back to summary |
|---|---|
| public static CompareLike. | |