Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The following table list new method names. We aim to reduce the name of the most frequently used methods ($() for references, and lit() for literals).

org.apache.flink.table.api.Expressions

$(String) for references

lit(java.lang.Object) for values

lit(java.lang.Object, DataType) for value with explicit type

call(String, Expression...)

call(FunctionDefinition, Expression...)

array(Expression, Expression...)

row(Expression, Expression...)

map(Expression, Expression, Expression...)

nullOf(DataType)

rowInterval(Long), interval(int, DataTypes.Resolution), interval(String, DataTypes.Resolution, DataTypes.Resolution) for representing row intervals or time intervals following the SQL syntax like `'12 DAY(2)` or `12 23:00:00.999999999' DAY(2) TO SECOND(9)` 

ifThenElse(Expression, Expression, Expression)

withColumns(Expression, Expression...)

withoutColumns(Expression, Expression...)

range(Integer, Integer), range(String, String) for column operations instead of `to`

and(Expression, Expression...)

or(Expression, Expression...)

not(Expression)

minus(Expression)

UNBOUNDED_ROW

UNBOUNDED_RANGE

CURRENT_ROW

CURRENT_RANGE

<<End of core expressions>>

localTime()

localTimestamp()

pi()

e()

uuid()

temporalOverlaps(Expression, Expression, Expression, Expression)

timestampDiff(TimePointUnit, Expression, Expression)

rand()

rand(Expression)

randInteger(Expression)

randInteger(Expression, Expression)

concat(Expression, Expression...)

atan2(Expression, Expression)

concat_ws(Expression, Expression, Expression...)

log(Expression)

log(Expression, Expression)

...

Some methods have Scala-specific names and would be added to ExpressionOperations. The following table lists new method names. We aim to reduce the name of the most frequently used methods

Scala Implicit Expression

org.apache.flink.table.api.ExpressionOperations

&&

and(Expression)

||

or(Expression)

>

isGreater(Expression)

>=

isGreaterOrEqual(Expression)

<

isLess(Expression)

<=

isLessOrEqual(Expression)

===

isEqual(Expression)

!==

isNotEqual(Expression)

+

plus(Expression)

-

minus(Expression)

/

dividedBy(Expression)

*

times(Expression)

%

mod(Expression)

as(Symbol, Symbol*)

as(String, String...)

UserDefinedAggregateFunctionCall#distinct

distinct(Expression...)

to(Expression)

not supported

unary +

not supported

Compatibility, Deprecation, and Migration Plan

...