SQL Function Comparison
As Ignite 3 uses the Calcite engine, a number of functions have changed. The majority of functions can be migrated without additional actions, however for some functions additional actions are required.
Changed Functions
The following functions have been changed in Ignite 3. They can be used with minor changes.
| Ignite 2 | Ignite 3 | Comment |
|---|---|---|
DAY_OF_MONTH |
DAYOFMONTH |
This function was renamed. |
DAY_OF_WEEK |
DAYOFWEEK |
This function was renamed. |
DAY_OF_YEAR |
DAYOFYEAR |
This function was renamed. |
IS_JSON value |
IS JSON [VALUE] |
Function syntax was changed, the behavior is unchanged. |
ISNULL |
NVL |
This function was renamed. |
INSTR(a, b) |
POSITION (b IN a) |
Function name and syntax was changed, the behavior is unchanged. |
RANDOM_UUID |
RAND_UUID |
This function was renamed. |
Changed Data Types
| Ignite 2 | Ignite 3 | Comment |
|---|---|---|
BOOLEAN |
BOOLEAN |
Only |
Removed Functions
The following functions were removed in Ignite 3. Follow the recommendations below to adapt your code.
| Ignite 2 | Comment |
|---|---|
BITAND |
No equivalent is currently available. |
BITGET |
No equivalent is currently available. |
BITOR |
No equivalent is currently available. |
BITXOR |
No equivalent is currently available. |
BIT_AND |
No equivalent is currently available. |
BIT_OR |
No equivalent is currently available. |
COMPRESS |
No equivalent is currently available. |
CONVERT |
No equivalent is currently available. |
CURRENT_TIME |
No equivalent is currently available. |
DECRYPT |
No equivalent is currently available. |
ENCRYPT |
No equivalent is currently available. |
EXPAND |
No equivalent is currently available. |
FIRSTVALUE |
No equivalent is currently available. |
FORMATDATETIME |
Use |
GROUP_CONCAT |
No equivalent is currently available. |
JSON_MODIFY |
No equivalent is currently available. |
LASTVALUE |
No equivalent is currently available. |
LOG |
No equivalent is currently available. |
PARSEDATETIME |
Use |
ROUNDMAGIC |
No equivalent is currently available. |
SECURE_RAND |
No equivalent is currently available. |
STDDEV_POP |
No equivalent is currently available. |
STDDEV_SAMP |
No equivalent is currently available. |
VAR_POP |
No equivalent is currently available. |
VAR_SAMP |
No equivalent is currently available. |
ZERO |
No equivalent is currently available. |
Functions With Direct Equivalent
The following functions have direct equivalent in Ignite 3 and no actions are required to migrate them.
-
ABS
-
ACOS
-
ASCII
-
ASIN
-
ATAN
-
ATAN2
-
AVG
-
CAST
-
CBRT
-
CEIL
-
CEILING
-
CHAR_LENGTH
-
CHR
-
COALESCE
-
CONCAT
-
COS
-
COSH
-
COT
-
COUNT
-
CURRENT_DATE
-
DATEDIFF
-
DAYNAME
-
DECODE
-
DEGREES
-
DIFFERENCE
-
EXP
-
EXTRACT
-
FLOOR
-
FROM_BASE64
-
GREATEST
-
HOUR
-
INITCAP
-
JSON_ARRAY
-
JSON_OBJECT
-
JSON_QUERY
-
JSON_VALUE
-
LEFT
-
LENGTH
-
LN
-
LOG10
-
LOWER
-
LTRIM
-
MAX
-
MD5
-
MIN
-
MINUTE
-
MOD
-
MONTH
-
MONTHNAME
-
NVL
-
OCTET_LENGTH
-
PI
-
POSITION
-
POWER
-
QUARTER
-
RADIANS
-
RAND
-
REPEAT
-
REPLACE
-
REVERSE
-
RIGHT
-
ROUND
-
RTRIM
-
SECOND
-
SHA1
-
SIGN
-
SIN
-
SINH
-
SOUNDEX
-
SPACE
-
SQRT
-
SUBSTR
-
SUBSTRING
-
SUM
-
TAN
-
TANH
-
TIMESTAMPADD
-
TIMESTAMPDIFF
-
TO_BASE64
-
TRANSLATE
-
TRIM
-
TRUNCATE
-
UPPER
-
WEEK
-
YEAR
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.
