Package org.apache.calcite.sql.fun
Class SqlInternalOperators
java.lang.Object
org.apache.calcite.sql.fun.SqlInternalOperators
Contains internal operators.
These operators are always created directly, not by looking up a function
or operator by name or syntax, and therefore this class does not implement
interface SqlOperatorTable
.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SqlRowOperator
Similar toSqlStdOperatorTable.ROW
, but does not print "ROW".static final SqlRowOperator
Similar toANONYMOUS_ROW
, but does not print "ROW" or parentheses.static final SqlBetweenOperator
A BETWEEN operator for Druid, analogous toDRUID_IN
.static final SqlInOperator
An IN operator for Druid.static final SqlInOperator
A NOT IN operator for Druid, analogous toDRUID_IN
.static final SqlOperator
Fetch operator is ONLY used for its precedence during unparsing.static final SqlInternalOperator
DISTINCT
operator, occurs withinGROUP BY
clause.static final SqlDatetimeSubtractionOperator
2-argument form of the special minus-date operator to be used with BigQuery subtraction functions.static final SqlOperator
Offset operator is ONLY used for its precedence during unparsing.static final SqlOperator
Separator expression inside GROUP_CONCAT, e.g.static final SqlInternalOperator
"$THROW_UNLESS(condition, message)" throws an error with the given message if condition is not TRUE, otherwise returns TRUE. -
Method Summary
-
Field Details
-
ANONYMOUS_ROW
Similar toSqlStdOperatorTable.ROW
, but does not print "ROW".For arguments [1, TRUE], ROW would print "
ROW (1, TRUE)
", but this operator prints "(1, TRUE)
". -
ANONYMOUS_ROW_NO_PARENTHESES
Similar toANONYMOUS_ROW
, but does not print "ROW" or parentheses.For arguments [1, TRUE], prints "
1, TRUE
". It is used in contexts where parentheses have been printed (because we thought we were about to print "(ROW (1, TRUE))
") and we wish we had not. -
THROW_UNLESS
"$THROW_UNLESS(condition, message)" throws an error with the given message if condition is not TRUE, otherwise returns TRUE. -
DRUID_IN
An IN operator for Druid.Unlike the regular
SqlStdOperatorTable.IN
operator it may be used inRexCall
. It does not require that its operands have consistent types. -
DRUID_NOT_IN
A NOT IN operator for Druid, analogous toDRUID_IN
. -
DRUID_BETWEEN
A BETWEEN operator for Druid, analogous toDRUID_IN
. -
SEPARATOR
Separator expression inside GROUP_CONCAT, e.g. 'SEPARATOR ','
'. -
GROUP_BY_DISTINCT
DISTINCT
operator, occurs withinGROUP BY
clause. -
FETCH
Fetch operator is ONLY used for its precedence during unparsing. -
MINUS_DATE2
2-argument form of the special minus-date operator to be used with BigQuery subtraction functions. It differs from the standard MINUS_DATE operator in that it has 2 arguments, and subtracts an interval from a datetime. -
OFFSET
Offset operator is ONLY used for its precedence during unparsing.
-