diff --git a/docs/velox-backend-support-progress.md b/docs/velox-backend-support-progress.md index 01c730a891f9f..0f79c83e59f29 100644 --- a/docs/velox-backend-support-progress.md +++ b/docs/velox-backend-support-progress.md @@ -92,362 +92,367 @@ Gluten supports 28 operators (Drag to right to see all data types) Gluten supports 199 functions. (Drag to right to see all data types) -| Spark Functions | Velox/Presto Functions | Velox/Spark functions | Gluten | Restrictions | BOOLEAN | BYTE | SHORT | INT | LONG | FLOAT | DOUBLE | DATE | TIMESTAMP | STRING | DECIMAL | NULL | BINARS | CALENDAR | ARRAY | MAP | STRUCT | UDT | -|-------------------------------|------------------------|-----------------------|--------|--------------------------|---------|------|-------|-----|------|-------|--------|------|-----------|--------|---------|------|--------|----------|-------|-----|--------|-----| -| ! | | not | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| != | neq | | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| % | mod | remainder | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| & | bitwise_and | bitwise_and | S | | | | | | | | | | | | | | | | | | | | -| * | multiply | multiply | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| + | plus | add | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| - | minus | subtract | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| / | divide | divide | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| < | lt | lessthan | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| <= | lte | lessthanorequa | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| <=> | | equalnullsafe | S | | | | | | | | | | | | | | | | | | | | -| <> | neq | notequalto | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| = | | | S | | | | | | | | | | | | | | | | | | | | -| == | eq | equalto | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| > | gt | greaterthan | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| >= | gte | greaterthanorequal | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| ^ | bitwise_xor | | S | | | | S | S | S | | | | | | | | | | | | | | -| | | bitwise_or | bitwise_or | S | | | | S | S | S | | | | | | | | | | | | | | -| || | | | S | | | | | | | | | | | | | | | | | | | | -| ~ | bitwise_not | | S | | | | S | S | S | | | | | | | | | | | | | | -| and | | | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| between | between | between | S | | S | S | S | S | S | S | S | S | | S | | | | | | | | | -| bit_and | bitwise_and_agg | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| bit_count | bit_count | bit_count | S | | S | S | S | S | S | | | | | | | | | | | | | | -| bit_get | | bit_get | S | | | S | S | S | S | | | | | | | | | | | | | | -| bit_or | | | S | | | | | | | | | | | | | | | | | | | | -| bit_xor | | bit_xor | S | | | | | | | | | | | | | | | | | | | | -| case | | | S | | | | | | | | | | | | | | | | | | | | -| div | | | | | | | | | | | | | | | | | | | | | | | -| getbit | | | | | | | | | | | | | | | | | | | | | | | -| if | | | S | | | | | | | | | | | | | | | | | | | | -| ifnull | | | | | | | | | | | | | | | | | | | | | | | -| in | | in | S | | | | S | S | S | S | S | S | S | S | | | | | | | | | -| isnan | is_nan | isnan | S | | | | | | | S | S | | | | | | | | | | | | -| isnotnull | | isnotnull | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| isnull | is_null | isnull | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | -| mod | mod | remainder | S | | | | | | | | | | | | | | | | | | | | -| negative | negate | unaryminus | | | | | | | | | | | | | | | | | | | | | -| not | | not | S | | S | S | S | S | S | S | S | S | | | | | | | | | | | -| nullif | | | S | | | | | | | | | | | | | | | | | | | | -| or | | | S | | | | | | | | | | | | | | | | | | | | -| positive | | | S | | | | | | | | | | | | | | | | | | | | -| when | | | S | | | | | | | | | | | | | | | | | | | | -| ascii | | ascii | S | | | | | | | | | | | S | | | | | | | | | -| base64 | | | | | | | | | | | | | | | | | | | | | | | -| bin | | bin | | | | | | | | | | | | | | | | | | | | | -| bit_length | | | S | | | | | | | | | | | | | | | | | | | | -| btrim | | | S | | | | | | | | | | | | | | | | | | | | -| char, chr | chr | chr | S | | | | | | | | | | | S | | | | | | | | | -| char_length, character_length | length | length | S | | | | | | | | | | | S | | | | | | | | | -| character_length, char_length | length | length | S | | | | | | | | | | | S | | | | | | | | | -| chr, char | chr | chr | S | | | | | | | | | | | S | | | | | | | | | -| concat | concat | concat | S | | | | | | | | | | | S | | | | | | | | | -| concat_ws | | | | | | | | | | | | | | | | | | | | | | | -| contains | | contains | | | | | | | | | | | | | | | | | | | | | -| decode | | | | | | | | | | | | | | | | | | | | | | | -| elt | | | | | | | | | | | | | | | | | | | | | | | -| encode | | | | | | | | | | | | | | | | | | | | | | | -| endswith | | endsWith | | | | | | | | | | | | | | | | | | | | | -| find_in_set | | | S | | | | | | | | | | | S | | | | | | | | | -| format_number | | | | | | | | | | | | | | | | | | | | | | | -| format_string | | | | | | | | | | | | | | | | | | | | | | | -| initcap | | | | | | | | | | | | | | | | | | | | | | | -| instr | | instr | S | | | | | | | | | | | S | | | | | | | | | -| lcase, lower | lower | lower | S | | | | | | | | | | | S | | | | | | | | | -| left | | | S | | | | | | | | | | | S | | | | | | | | | -| length | length | length | S | | | | | | | | | | | S | | | | | | | | | -| levenshtein | | levenshtein | S | | | | | | | | | | | | | | | | | | | | -| locate | strpos | | S | Mismatched | | | | | | | | | | S | | | | | | | | | -| lower | lower | lower | S | | | | | | | | | | | S | | | | | | | | | -| lpad | lpad | | S | | | | | | | | | | | S | | | | | | | | | -| ltrim | ltrim | ltrim | S | | | | | | | | | | | S | | | | | | | | | -| octet_length | | | | | | | | | | | | | | | | | | | | | | | -| overlay | | overlay | S | | | | | | | | | | | | | | | | | | | | -| parse_url | | | | | | | | | | | | | | | | | | | | | | | -| position | strpos | | | | | | | | | | | | | | | | | | | | | | -| printf | | | | | | | | | | | | | | | | | | | | | | | -| repeat | | repeat | S | | | | | | | | | | | | | | | | | | | | -| replace | replace | replace | S | | | | | | | | | | | S | | | | | | | | | -| reverse | reverse | | S | | | | | | | | | | | S | | | | | | | | | -| right | | | | | | | | | | | | | | | | | | | | | | | -| rpad | rpad | | S | | | | | | | | | | | S | | | | | | | | | -| rtrim | rtrim | rtrim | S | | | | | | | | | | | S | | | | | | | | | -| sentences | | | | | | | | | | | | | | | | | | | | | | | -| soundex | | soundex | S | | | | | | | | | | | | | | | | | | | | -| space | | | | | | | | | | | | | | | | | | | | | | | -| split | split | split | S | Mismatched | | | | | | | | | | | | | | | | | | | -| split_part | split_part | | | Mismatched | | | | | | | | | | | | | | | | | | | -| startswith | | startsWith | | | | | | | | | | | | | | | | | | | | | -| substr, substring | substr | substring | S | | | | | | | | | | | S | | | | | | | | | -| substring, substr | substr | substring | S | | | | | | | | | | | S | | | | | | | | | -| substring_index | | substring_index | S | | | | | | | | | | | | | | | | | | | | -| translate | | | | | | | | | | | | | | | | | | | | | | | -| trim | trim | trim | S | | | | | | | | | | | S | | | | | | | | | -| ucase, upper | upper | upper | S | | | | | | | | | | | S | | | | | | | | | -| unbase64 | | | | | | | | | | | | | | | | | | | | | | | -| unhex | | | S | | | | | | | | | | | | | | | | | | | | -| upper, ucase | upper | upper | S | | | | | | | | | | | S | | | | | | | | | -| xpath | | | | | | | | | | | | | | | | | | | | | | | -| xpath_boolean | | | | | | | | | | | | | | | | | | | | | | | -| xpath_double | | | | | | | | | | | | | | | | | | | | | | | -| xpath_float | | | | | | | | | | | | | | | | | | | | | | | -| xpath_int | | | | | | | | | | | | | | | | | | | | | | | -| xpath_long | | | | | | | | | | | | | | | | | | | | | | | -| xpath_number | | | | | | | | | | | | | | | | | | | | | | | -| xpath_short | | | | | | | | | | | | | | | | | | | | | | | -| xpath_string | | | | | | | | | | | | | | | | | | | | | | | -| like | like | | S | | | | | | | | | | | S | | | | | | | | | -| regexp | | rlike | S | Lookaround not supported | | | | | | | | | | S | | | | | | | | | -| regexp_extract | regexp_extract | regexp_extract | S | Lookaround not supported | | | | | | | | | | S | | | | | | | | | -| regexp_extract_all | regexp_extract_all | | S | Lookaround not supported | | | | | | | | | | S | | | | | | | | | -| regexp_like | regexp_like | rlike | S | Lookaround not supported | | | | | | | | | | S | | | | | | | | | -| regexp_replace | regexp_replace | | S | | | | | | | | | | | S | | | | | | | | | -| rlike | | rlike | S | Lookaround not supported | | | | | | | | | | S | | | | | | | | | -| abs | abs | abs | S | ANSI OFF | | S | S | S | S | S | S | | | | | | | | | | | | -| acos | acos | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| acosh | | acosh | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| asin | asin | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| asinh | | asinh | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| atan | atan | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| atan2 | atan2 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| atanh | | atanh | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| bround | | | | | | | | | | | | | | | | | | | | | | | -| cbrt | cbrt | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| ceil | ceil | ceil | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| ceiling | ceiling | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| conv | | | | | | | | | | | | | | | | | | | | | | | -| cos | cos | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| cosh | cosh | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| cot | | | | | | | | | | | | | | | | | | | | | | | -| degrees | degrees | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| e | e | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| exp | exp | exp | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| expm1 | | | | | | | | | | | | | | | | | | | | | | | -| factorial | | | | | | | | | | | | | | | | | | | | | | | -| floor | floor | floor | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| hex | | | S | | | | | | S | | | | | S | | | S | | | | | | -| hypot | | | | | | | | | | | | | | | | | | | | | | | -| ln | ln | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| log | ln | log | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| log10 | log10 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| log1p | | | | | | | | | | | | | | | | | | | | | | | -| log2 | log2 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| pi | pi | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| pmod | | pmod | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| pow, power | pow,power | power | | | | | S | S | S | S | S | | | | | | | | | | | | -| power, pow | power,pow | power | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| radians | radians | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| rand | rand | rand | S | | | | | | | | | | | | | | | | | | | | -| rand | rand | rand | | | | | | | | | | | | | | | | | | | | | -| random | random | | S | | | | | | | | | | | | | | | | | | | | -| rint | | rint |S | | | | | | | | | | | | | | | | | | | | -| round | round | round | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| shiftleft | bitwise_left_shift | shiftleft | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| shiftright | bitwise_right_shift | shiftright | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| shiftrightunsigned | | | | | | | | | | | | | | | | | | | | | | | -| sign, signum | sign | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| signum, sign | sign | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| sin | sin | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| sinh | | sinh | | | | | | | | | | | | | | | | | | | | | -| sqrt | sqrt | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| tan | tan | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| tanh | tanh | | S | | | S | S | S | S | S | S | | | | | | | | | | | | -| width_bucket | width_bucket | width_bucket | S | | | | | | | | | | | | | | | | | | | | -| array | | array | S | | | | | | | | | | | | | | | | S | | | | -| aggregate | aggregate | reduce | S | | | | | | | | | | | | | | | | S | | | | -| array_contains | | array_contains | S | | | | | | | | | | | | | | | | | | | | -| array_distinct | array_distinct | | S | | | | | | | | | | | | | | | | S | | | | -| array_except | array_except | | S | | | | | | | | | | | | | | | | S | | | | -| array_intersect | array_intersect | array_intersect | S | | | | | | | | | | | | | | | | | | | | -| array_join | array_join | | S | | | | | | | | | | | | | | | | | | | | -| array_max | array_max | | S | | | | | | | | | | | | | | | | | | | | -| array_min | array_min | | S | | | | | | | | | | | | | | | | | | | | -| array_position | array_position | | S | | | | | | | | | | | | | | | | S | | | | -| array_remove | array_remove | | S | | | | | | | | | | | | | | | | | | | | -| array_repeat | | | S | | S | S | S | S | S | S | S | S | S | S | S | | | | | | | | -| array_sort | array_sort | array_sort | S | | | | | | | | | | | | | | | | | | | | -| array_union | | | | | | | | | | | | | | | | | | | | | | | -| arrays_overlap | array_overlap | S | | | | | | | | | | | | | | | | | | | | | -| arrays_zip | zip | | S | | | | | | | | | | | | | | | | | | | | -| cardinality | cardinality | | | | | | | | | | | | | | | | | | | | | | -| element_at | element_at | element_at | S | | | | | | | | | | | | | | | | S | S | | | -| exists | any_match | | S | | | | | | | | | | | | | | | | | | | | -| explode, explode_outer | | | | | | | | | | | | | | | | | | | | | | | -| explode_outer, explode | | | | | | | | | | | | | | | | | | | | | | | -| filter | filter | filter | S | Lambda with index argument not supported | | | | | | | | | | | | | | | | | | | -| forall | all_match | | S | | | | | | | | | | | | | | | | | | | | -| flatten | flatten | flatten | S | | | | | | | | | | | | | | | | | | | | -| map | map | map | S | | | | | | | | | | | | | | | | | | | | -| map_concat | map_concat | | | | | | | | | | | | | | | | | | | | | | -| map_entries | map_entries | | | | | | | | | | | | | | | | | | | | | | -| map_filter | map_filter | map_filter | | | | | | | | | | | | | | | | | | | | | -| get_map_value | | element_at | S | | | | | | | | | | | | | | | | | S | | | -| map_from_arrays | | map_from_arrays | S | | | | | | | | | | | | | | | | | S | | | -| map_from_entries | map_from_entries | | | | | | | | | | | | | | | | | | | | | | -| map_keys | map_keys | map_keys | S | | | | | | | | | | | | | | | | | | | | -| map_values | map_values | map_values | S | | | | | | | | | | | | | | | | | S | | | -| map_zip_with | map_zip_with | | S | | | | | | | | | | | | | | | | | S | | | -| named_struct,struct | row_construct | named_struct | S | | | | | | | | | | | | | | | | | | S | | -| posexplode_outer,posexplode | | | | | | | | | | | | | | | | | | | | | | | -| sequence | | | | | | | | | | | | | | | | | | | | | | | -| shuffle | shuffle | shuffle | S | | | | | | | | | | | | | | | | | | | | -| size | | size | S | | | | | | | | | | | | | | | | | | | | -| slice | slice | | | | | | | | | | | | | | | | | | | | | | -| sort_array | | sort_array | S | | | | | | | | | | | | | | | | | | | | -| str_to_map | | | S | | | | | | | | | | | | | | | | | | | | -| transform | transform | transofrm | | | | | | | | | | | | | | | | | | | | | -| transform_keys | transform_keys | | PS | | | | | | | | | | | | | | | | | | | | -| transform_values | transform_values | | PS | | | | | | | | | | | | | | | | | | | | -| zip_with | zip_with | S | | | | | | | | | | | | | | | | | | | | | -| add_months | | | S | | | | | | | | | | | | | | | | | | | | -| current_date | | | S* | | | | | | | | | | | | | | | | | | | | -| current_timestamp | | | S* | | | | | | | | | | | | | | | | | | | | -| current_timezone | | | S* | | | | | | | | | | | | | | | | | | | | -| date | date | | S | | | | | | | | | | | | | | | | | | | | -| date_add | date_add | date_add | S | | | S | S | S | | | | S | S | | | | | | | | | | -| date_format | date_format | | S | | | | | S | | | | | S | | | | | | | | | | -| date_from_unix_date | | | S | | | | | | | | | | | | | | | | | | | | -| date_part | | | | | | | | | | | | | | | | | | | | | | | -| date_sub | | | S | | | | | | | | | | | | | | | | | | | | -| date_trunc | date_trunc | | | | | | | | | | | | | | | | | | | | | | -| datediff | date_diff | | S | | | | | | | | | S | S | | | | | | | | | | -| day | day | | S | | | | | | | | | S | S | | | | | | | | | | -| dayofmonth | day_of_month | | S | | | | | | | | | S | S | | | | | | | | | | -| dayofweek | day_of_week,dow | | S | | | | | | | | | S | S | | | | | | | | | | -| dayofyear | day_of_year,doy | | S | | | | | | | | | S | S | | | | | | | | | | -| extract | | | | | | | | | | | | S | S | | | | | | | | | | -| from_unixtime | from_unixtime | | S | | | | | | S | | | | | | | | | | | | | | -| from_utc_timestamp | | from_utc_timestamp | S | | | | | | | | | | | | | | | | | | | | -| hour | hour | | S | | | | | | | | | | S | | | | | | | | | | -| last_day | | last_day | S | | | | | | | | | | | | | | | | | | | | -| make_date | | make_date | S | | | | | | | | | | | | | | | | | | | | -| make_dt_interval | | | | | | | | | | | | | | | | | | | | | | | -| make_interval | | | | | | | | | | | | | | | | | | | | | | | -| make_timestamp | | | | | | | | | | | | | | | | | | | | | | | -| make_ym_interval | | | | | | | | | | | | | | | | | | | | | | | -| minute | minute | | S | | | | | | | | | | | | | | | | | | | | -| month | month | | S | | | | | | | | | S | S | | | | | | | | | | -| months_between | | | | | | | | | | | | | | | | | | | | | | | -| next_day | | | S | | | | | | | | | S | | | | | | | | | | | -| now | | | S | | | | | | | | | S | S | | | | | | | | | | -| quarter | quarter | | S | | | | | | | | | S | S | | | | | | | | | | -| second | second | | S | | | | | | | | | | | | | | | | | | | | -| session_window | | | | | | | | | | | | | | | | | | | | | | | -| timestamp | | | | | | | | | | | | | | | | | | | | | | | -| timestamp_micros | | timestamp_micros | S | | | | | | | | | | | | | | | | | | | | -| timestamp_millis | | timestamp_millis | S | | | | | | | | | | | | | | | | | | | | -| timestamp_seconds | | | | | | | | | | | | | | | | | | | | | | | -| to_date | | | S | | | | | | | | | S | S | | | | | | | | | | -| to_timestamp | | | | | | | | | | | | | | | | | | | | | | | -| to_unix_timestamp | to_unixtime | to_unix_timestamp | S | | | | | | | | | | | | | | | | | | | | -| to_utc_timestamp | | | | | | | | | | | | | | | | | | | | | | | -| trunc | | | | | | | | | | | | | | | | | | | | | | | -| unix_timestamp | | unix_timestamp | | | | | | | | | | | | | | | | | | | | | -| unix_seconds | | unix_seconds | S | | | | | | | | | | | | | | | | | | | | -| unix_millis | | unix_millis | S | | | | | | | | | | | | | | | | | | | | -| unix_micros | | unix_micros | S | | | | | | | | | | | | | | | | | | | | -| weekday | | | S | | | | | | | | | S | | | | | | | | | | | -| weekofyear | week,week_of_year | | S | | | | | | | | | | | | | | | | | | | | -| window | | | | | | | | | | | | | | | | | | | | | | | -| year | year | year | S | | | | | | | | | S | S | | | | | | | | | | -| aggregate | | aggregate | S | | | | | | | | | | | | | | | | | | | | -| any | | | | | | | | | | | | | | | | | | | | | | | -| approx_count_distinct | approx_distinct | | S | | S | S | S | S | S | S | S | S | | S | | | | | | | | | -| approx_percentile | | | | | | | | | | | | | | | | | | | | | | | -| avg | avg | | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| bool_and | | | | | | | | | | | | | | | | | | | | | | | -| bool_or | | | | | | | | | | | | | | | | | | | | | | | -| collect_list | | | S | | | | | | | | | | | | | | | | | | | | -| collect_set | | | S | | | | | | | | | | | | | | | | | | | | -| corr | corr | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| count | count | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| count_if | count_if | | | | | S | S | S | S | S | | | | | | | | | | | | | -| count_min_sketch | | | | | | | | | | | | | | | | | | | | | | | -| covar_pop | covar_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| covar_samp | covar_samp | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| every | | | | | | | | | | | | | | | | | | | | | | | -| first | | first | S | | | | | | | | | | | | | | | | | | | | -| first_value | | first_value | S | | | | | | | | | | | | | | | | | | | | -| grouping | | | | | | | | | | | | | | | | | | | | | | | -| grouping_id | | | | | | | | | | | | | | | | | | | | | | | -| kurtosis | kurtosis | kurtosis | S | | | | S | S | S | S | S | | | | | | | | | | | | -| last | | last | S | | | | | | | | | | | | | | | | | | | | -| last_value | | last_value | S | | | | | | | | | | | | | | | | | | | | -| max | max | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| max_by | | | S | | | | | | | | | | | | | | | | | | | | -| mean | avg | | S | ANSI OFF | | | | | | | | | | | | | | | | | | | -| min | min | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| min_by | | | S | | | | | | | | | | | | | | | | | | | | -| regr_avgx | regr_avgx | regr_avgx | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_avgy | regr_avgy | regr_avgy | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_count | regr_count | regr_count | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_r2 | regr_r2 | regr_r2 | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_intercept | regr_intercept | regr_intercept | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_slope | regr_slope | regr_slope | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_sxy | regr_sxy | regr_sxy | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_sxx | regr_sxx | regr_sxx | S | | | | S | S | S | S | S | | | | | | | | | | | | -| regr_syy | regr_syy | regr_syy | S | | | | S | S | S | S | S | | | | | | | | | | | | -| skewness | skewness | skewness | S | | | | S | S | S | S | S | | | | | | | | | | | | -| some | | | | | | | | | | | | | | | | | | | | | | | -| std,stddev | stddev | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| stddev,std | stddev | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| stddev_pop | stddev_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| stddev_samp | stddev_samp | | S | | | | S | S | S | S | S | | | | | | | | | | | | -| sum | sum | | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | -| var_pop | var_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| var_samp | var_samp | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| variance | variance | | S | | | S | S | S | S | S | | | | | | | | | | | | | -| cume_dist | cume_dist | | S | | | | | | | | | | | | | | | | | | | | -| dense_rank | dense_rank | | S | | | | | | | | | | | | | | | | | | | | -| lag | | | S | | | | | | | | | | | | | | | | | | | | -| lead | | | S | | | | | | | | | | | | | | | | | | | | -| nth_value | nth_value | nth_value | PS | | | | | | | | | | | | | | | | | | | | -| ntile | ntile | ntile | S | | | | | | | | | | | | | | | | | | | | -| percent_rank | percent_rank | | S | | | | | | | | | | | | | | | | | | | | -| rank | rank | | S | | | | | | | | | | | | | | | | | | | | -| row_number | row_number | | S | | | | S | S | S | | | | | | | | | | | | | | -| from_csv | | | | | | | | | | | | | | | | | | | | | | | -| from_json | | | | | | | | | | | | | | | | | | | | | | | -| get_json_object | json_extract_scalar | get_json_object | S | | | | | | | | | | | | | | | | | | S | | -| json_array_length | json_array_length | | S | | | | | | | | | | | | | | | | | | S | | -| json_tuple | | | | | | | | | | | | | | | | | | | | | | | -| schema_of_csv | | | | | | | | | | | | | | | | | | | | | | | -| schema_of_json | | | | | | | | | | | | | | | | | | | | | | | -| to_csv | | | | | | | | | | | | | | | | | | | | | | | -| to_json | | | | | | | | | | | | | | | | | | | | | | | -| assert_true | | | | | | | | | | | | | | | | | | | | | | | -| coalesce | | | PS | | | | | | | | | | | | | | | | | | | | -| crc32 | crc32 | | S | | | | | | | | | | | S | | | | | | | | | -| current_user | | | S* | | | | | | | | | | | S | | | | | | | | | -| current_catalog | | | S | | | | | | | | | | | | | | | | | | | | -| current_database | | | S | | | | | | | | | | | | | | | | | | | | -| greatest | greatest | greatest | S | | | | | | S | S | S | S | S | | | | | | | | | | -| hash | hash | hash | S | | S | S | S | S | S | S | S | | | | | | | | | | | | -| inline | | | | | | | | | | | | | | | | | | | | | | | -| inline_outer | | | | | | | | | | | | | | | | | | | | | | | -| input_file_name | | | S | | | | | | | | | | | | | | | | | | | | -| input_file_block_length | | | S | | | | | | | | | | | | | | | | | | | | -| input_file_block_start | | | S | | | | | | | | | | | | | | | | | | | | -| java_method | | | | | | | | | | | | | | | | | | | | | | | -| least | least | least | S | | | | | | S | S | S | S | S | | | | | | | | | | -| md5 | md5 | | S | | | S | | | | | | | | | | | | | | | | | -| monotonically_increasing_id | | | S | | | | | | | | | | | | | | | | | | | | -| nanvl | | | S | | | | | | | | | | | | | | | | | | | | -| nvl | | | | | | | | | | | | | | | | | | | | | | | -| nvl2 | | | | | | | | | | | | | | | | | | | | | | | -| raise_error | | raise_error | S | | | | | | | | | | | | | | | | | | | | -| reflect | | | | | | | | | | | | | | | | | | | | | | | -| sha | | | S | | | | | | | | | | | S | | | | | | | | | -| sha1 | sha1 | sha1 | S | | | | | | | | | | | S | | | | | | | | | -| sha2 | | sha2 | S | | | | | | | | | | | S | | | | | | | | | -| spark_partition_id | | | S | | | | | | | | | | | | | | | | | | | | -| stack | | | S | | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | -| xxhash64 | xxhash64 | xxhash64 | | | | | | | | | | | | | | | | | | | | | -| uuid | uuid | uuid | S | | | | | | | | | | | | | | | | | | | | -| rand | rand | rand | S | | | | | | | | | | | | | | | | | | | | +| Spark Functions | Velox/Presto Functions | Velox/Spark functions | Gluten | Restrictions | BOOLEAN | BYTE | SHORT | INT | LONG | FLOAT | DOUBLE | DATE | TIMESTAMP | STRING | DECIMAL | NULL | BINARY | CALENDAR | ARRAY | MAP | STRUCT | UDT | +|------------------------------|------------------------|-----------------------|--------|--------------------------|---------|------|-------|-----|------|-------|--------|------|-----------|--------|---------|------|--------|----------|-------|-----|--------|-----| +| ! | | not | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| != | neq | | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| % | mod | remainder | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| & | bitwise_and | bitwise_and | S | | | | | | | | | | | | | | | | | | | | +| * | multiply | multiply | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| + | plus | add | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| - | minus | subtract | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| / | divide | divide | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| < | lt | lessthan | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| <= | lte | lessthanorequa | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| <=> | | equalnullsafe | S | | | | | | | | | | | | | | | | | | | | +| <> | neq | notequalto | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| = | | | S | | | | | | | | | | | | | | | | | | | | +| == | eq | equalto | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| > | gt | greaterthan | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| >= | gte | greaterthanorequal | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| ^ | bitwise_xor | | S | | | | S | S | S | | | | | | | | | | | | | | +| | | bitwise_or | bitwise_or | S | | | | S | S | S | | | | | | | | | | | | | | +| || | | | S | | | | | | | | | | | | | | | | | | | | +| ~ | bitwise_not | | S | | | | S | S | S | | | | | | | | | | | | | | +| and | | | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| between | between | between | S | | S | S | S | S | S | S | S | S | | S | | | | | | | | | +| bit_and | bitwise_and_agg | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| bit_count | bit_count | bit_count | S | | S | S | S | S | S | | | | | | | | | | | | | | +| bit_get | | bit_get | S | | | S | S | S | S | | | | | | | | | | | | | | +| bit_or | | | S | | | | | | | | | | | | | | | | | | | | +| bit_xor | | bit_xor | S | | | | | | | | | | | | | | | | | | | | +| case | | | S | | | | | | | | | | | | | | | | | | | | +| div | | | | | | | | | | | | | | | | | | | | | | | +| getbit | | | | | | | | | | | | | | | | | | | | | | | +| if | | | S | | | | | | | | | | | | | | | | | | | | +| ifnull | | | | | | | | | | | | | | | | | | | | | | | +| in | | in | S | | | | S | S | S | S | S | S | S | S | | | | | | | | | +| isnan | is_nan | isnan | S | | | | | | | S | S | | | | | | | | | | | | +| isnotnull | | isnotnull | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| isnull | is_null | isnull | S | | S | S | S | S | S | S | S | | | S | | | | | | | | | +| mod | mod | remainder | S | | | | | | | | | | | | | | | | | | | | +| negative | negate | unaryminus | | | | | | | | | | | | | | | | | | | | | +| not | | not | S | | S | S | S | S | S | S | S | S | | | | | | | | | | | +| nullif | | | S | | | | | | | | | | | | | | | | | | | | +| or | | | S | | | | | | | | | | | | | | | | | | | | +| positive | | | S | | | | | | | | | | | | | | | | | | | | +| when | | | S | | | | | | | | | | | | | | | | | | | | +| ascii | | ascii | S | | | | | | | | | | | S | | | | | | | | | +| base64 | | | | | | | | | | | | | | | | | | | | | | | +| bin | | bin | | | | | | | | | | | | | | | | | | | | | +| bit_length | | | S | | | | | | | | | | | | | | | | | | | | +| btrim | | | S | | | | | | | | | | | | | | | | | | | | +| char, chr | chr | chr | S | | | | | | | | | | | S | | | | | | | | | +| char_length/character_length | length | length | S | | | | | | | | | | | S | | | | | | | | | +| character_lengt/char_length | length | length | S | | | | | | | | | | | S | | | | | | | | | +| chr, char | chr | chr | S | | | | | | | | | | | S | | | | | | | | | +| concat | concat | concat | S | | | | | | | | | | | S | | | | | | | | | +| concat_ws | | | | | | | | | | | | | | | | | | | | | | | +| contains | | contains | | | | | | | | | | | | | | | | | | | | | +| decode | | | | | | | | | | | | | | | | | | | | | | | +| elt | | | | | | | | | | | | | | | | | | | | | | | +| encode | | | | | | | | | | | | | | | | | | | | | | | +| endswith | | endsWith | | | | | | | | | | | | | | | | | | | | | +| find_in_set | | | S | | | | | | | | | | | S | | | | | | | | | +| format_number | | | | | | | | | | | | | | | | | | | | | | | +| format_string | | | | | | | | | | | | | | | | | | | | | | | +| initcap | | | | | | | | | | | | | | | | | | | | | | | +| instr | | instr | S | | | | | | | | | | | S | | | | | | | | | +| lcase, lower | lower | lower | S | | | | | | | | | | | S | | | | | | | | | +| left | | | S | | | | | | | | | | | S | | | | | | | | | +| length | length | length | S | | | | | | | | | | | S | | | | | | | | | +| levenshtein | | levenshtein | S | | | | | | | | | | | | | | | | | | | | +| locate | strpos | | S | Mismatched | | | | | | | | | | S | | | | | | | | | +| lower | lower | lower | S | | | | | | | | | | | S | | | | | | | | | +| lpad | lpad | | S | | | | | | | | | | | S | | | | | | | | | +| ltrim | ltrim | ltrim | S | | | | | | | | | | | S | | | | | | | | | +| octet_length | | | | | | | | | | | | | | | | | | | | | | | +| overlay | | overlay | S | | | | | | | | | | | | | | | | | | | | +| parse_url | | | | | | | | | | | | | | | | | | | | | | | +| position | strpos | | | | | | | | | | | | | | | | | | | | | | +| printf | | | | | | | | | | | | | | | | | | | | | | | +| repeat | | repeat | S | | | | | | | | | | | | | | | | | | | | +| replace | replace | replace | S | | | | | | | | | | | S | | | | | | | | | +| reverse | reverse | | S | | | | | | | | | | | S | | | | | | | | | +| right | | | | | | | | | | | | | | | | | | | | | | | +| rpad | rpad | | S | | | | | | | | | | | S | | | | | | | | | +| rtrim | rtrim | rtrim | S | | | | | | | | | | | S | | | | | | | | | +| sentences | | | | | | | | | | | | | | | | | | | | | | | +| soundex | | soundex | S | | | | | | | | | | | | | | | | | | | | +| space | | | | | | | | | | | | | | | | | | | | | | | +| split | split | split | S | Mismatched | | | | | | | | | | | | | | | | | | | +| split_part | split_part | | | Mismatched | | | | | | | | | | | | | | | | | | | +| startswith | | startsWith | | | | | | | | | | | | | | | | | | | | | +| substr, substring | substr | substring | S | | | | | | | | | | | S | | | | | | | | | +| substring, substr | substr | substring | S | | | | | | | | | | | S | | | | | | | | | +| substring_index | | substring_index | S | | | | | | | | | | | | | | | | | | | | +| translate | | | | | | | | | | | | | | | | | | | | | | | +| trim | trim | trim | S | | | | | | | | | | | S | | | | | | | | | +| ucase, upper | upper | upper | S | | | | | | | | | | | S | | | | | | | | | +| unbase64 | | | | | | | | | | | | | | | | | | | | | | | +| unhex | | | S | | | | | | | | | | | | | | | | | | | | +| upper, ucase | upper | upper | S | | | | | | | | | | | S | | | | | | | | | +| xpath | | | | | | | | | | | | | | | | | | | | | | | +| xpath_boolean | | | | | | | | | | | | | | | | | | | | | | | +| xpath_double | | | | | | | | | | | | | | | | | | | | | | | +| xpath_float | | | | | | | | | | | | | | | | | | | | | | | +| xpath_int | | | | | | | | | | | | | | | | | | | | | | | +| xpath_long | | | | | | | | | | | | | | | | | | | | | | | +| xpath_number | | | | | | | | | | | | | | | | | | | | | | | +| xpath_short | | | | | | | | | | | | | | | | | | | | | | | +| xpath_string | | | | | | | | | | | | | | | | | | | | | | | +| like | like | | S | | | | | | | | | | | S | | | | | | | | | +| regexp | | rlike | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| regexp_extract | regexp_extract | regexp_extract | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| regexp_extract_all | regexp_extract_all | | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| regexp_like | regexp_like | rlike | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| regexp_replace | regexp_replace | | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| rlike | | rlike | S | Lookaround unsupported | | | | | | | | | | S | | | | | | | | | +| abs | abs | abs | S | ANSI OFF | | S | S | S | S | S | S | | | | | | | | | | | | +| acos | acos | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| acosh | | acosh | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| asin | asin | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| asinh | | asinh | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| atan | atan | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| atan2 | atan2 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| atanh | | atanh | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| bround | | | | | | | | | | | | | | | | | | | | | | | +| cbrt | cbrt | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| ceil | ceil | ceil | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| ceiling | ceiling | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| conv | | | | | | | | | | | | | | | | | | | | | | | +| cos | cos | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| cosh | cosh | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| cot | | | | | | | | | | | | | | | | | | | | | | | +| degrees | degrees | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| e | e | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| exp | exp | exp | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| expm1 | | | S | | | | | | | | | | | | | | | | | | | | +| factorial | | | | | | | | | | | | | | | | | | | | | | | +| floor | floor | floor | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| hex | | | S | | | | | | S | | | | | S | | | S | | | | | | +| hypot | | | | | | | | | | | | | | | | | | | | | | | +| ln | ln | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| log | ln | log | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| log10 | log10 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| log1p | | | | | | | | | | | | | | | | | | | | | | | +| log2 | log2 | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| pi | pi | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| pmod | | pmod | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| pow, power | pow,power | power | | | | | S | S | S | S | S | | | | | | | | | | | | +| power, pow | power,pow | power | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| radians | radians | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| rand | rand | rand | S | | | | | | | | | | | | | | | | | | | | +| rand | rand | rand | | | | | | | | | | | | | | | | | | | | | +| random | random | | S | | | | | | | | | | | | | | | | | | | | +| rint | | rint | S | | | | | | | | | | | | | | | | | | | | +| round | round | round | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| shiftleft | bitwise_left_shift | shiftleft | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| shiftright | bitwise_right_shift | shiftright | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| shiftrightunsigned | | | | | | | | | | | | | | | | | | | | | | | +| sign, signum | sign | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| signum, sign | sign | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| sin | sin | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| sinh | | sinh | | | | | | | | | | | | | | | | | | | | | +| sqrt | sqrt | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| tan | tan | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| tanh | tanh | | S | | | S | S | S | S | S | S | | | | | | | | | | | | +| width_bucket | width_bucket | width_bucket | S | | | | | | | | | | | | | | | | | | | | +| array | | array | S | | | | | | | | | | | | | | | | S | | | | +| aggregate | aggregate | reduce | S | | | | | | | | | | | | | | | | S | | | | +| array_contains | | array_contains | S | | | | | | | | | | | | | | | | | | | | +| array_distinct | array_distinct | | S | | | | | | | | | | | | | | | | S | | | | +| array_except | array_except | | S | | | | | | | | | | | | | | | | S | | | | +| array_intersect | array_intersect | array_intersect | S | | | | | | | | | | | | | | | | | | | | +| array_join | array_join | | S | | | | | | | | | | | | | | | | | | | | +| array_max | array_max | | S | | | | | | | | | | | | | | | | | | | | +| array_min | array_min | | S | | | | | | | | | | | | | | | | | | | | +| array_position | array_position | | S | | | | | | | | | | | | | | | | S | | | | +| array_remove | array_remove | | S | | | | | | | | | | | | | | | | | | | | +| array_repeat | | | S | | S | S | S | S | S | S | S | S | S | S | S | | | | | | | | +| array_sort | array_sort | array_sort | S | | | | | | | | | | | | | | | | | | | | +| array_union | | | | | | | | | | | | | | | | | | | | | | | +| arrays_overlap | array_overlap | S | | | | | | | | | | | | | | | | | | | | | +| arrays_zip | zip | | S | | | | | | | | | | | | | | | | | | | | +| cardinality | cardinality | | | | | | | | | | | | | | | | | | | | | | +| element_at | element_at | element_at | S | | | | | | | | | | | | | | | | S | S | | | +| exists | any_match | | S | | | | | | | | | | | | | | | | | | | | +| explode, explode_outer | | | | | | | | | | | | | | | | | | | | | | | +| explode_outer, explode | | | | | | | | | | | | | | | | | | | | | | | +| filter | filter | filter | PS | | | | | | | | | | | | | | | | | | | | +| forall | all_match | | S | | | | | | | | | | | | | | | | | | | | +| flatten | flatten | flatten | S | | | | | | | | | | | | | | | | | | | | +| map | map | map | S | | | | | | | | | | | | | | | | | | | | +| map_concat | map_concat | | | | | | | | | | | | | | | | | | | | | | +| map_entries | map_entries | | | | | | | | | | | | | | | | | | | | | | +| map_filter | map_filter | map_filter | | | | | | | | | | | | | | | | | | | | | +| get_map_value | | element_at | S | | | | | | | | | | | | | | | | | S | | | +| map_from_arrays | | map_from_arrays | S | | | | | | | | | | | | | | | | | S | | | +| map_from_entries | map_from_entries | | | | | | | | | | | | | | | | | | | | | | +| map_keys | map_keys | map_keys | S | | | | | | | | | | | | | | | | | | | | +| map_values | map_values | map_values | S | | | | | | | | | | | | | | | | | S | | | +| map_zip_with | map_zip_with | | S | | | | | | | | | | | | | | | | | S | | | +| named_struct,struct | row_construct | named_struct | S | | | | | | | | | | | | | | | | | | S | | +| posexplode_outer,posexplode | | | | | | | | | | | | | | | | | | | | | | | +| sequence | | | | | | | | | | | | | | | | | | | | | | | +| shuffle | shuffle | shuffle | S | | | | | | | | | | | | | | | | | | | | +| size | | size | S | | | | | | | | | | | | | | | | | | | | +| array_size | | | S | | | | | | | | | | | | | | | | | | | | +| slice | slice | | | | | | | | | | | | | | | | | | | | | | +| sort_array | | sort_array | S | | | | | | | | | | | | | | | | | | | | +| str_to_map | | | S | | | | | | | | | | | | | | | | | | | | +| transform | transform | transofrm | | | | | | | | | | | | | | | | | | | | | +| transform_keys | transform_keys | | PS | | | | | | | | | | | | | | | | | | | | +| transform_values | transform_values | | PS | | | | | | | | | | | | | | | | | | | | +| zip_with | zip_with | | S | | | | | | | | | | | | | | | | | | | | +| add_months | | | S | | | | | | | | | | | | | | | | | | | | +| current_date | | | S* | | | | | | | | | | | | | | | | | | | | +| current_timestamp | | | S* | | | | | | | | | | | | | | | | | | | | +| current_timezone | | | S* | | | | | | | | | | | | | | | | | | | | +| date | date | | S | | | | | | | | | | | | | | | | | | | | +| date_add | date_add | date_add | S | | | S | S | S | | | | S | S | | | | | | | | | | +| date_format | date_format | | S | | | | | S | | | | | S | | | | | | | | | | +| date_from_unix_date | | | S | | | | | | | | | | | | | | | | | | | | +| date_part | | | | | | | | | | | | | | | | | | | | | | | +| date_sub | | | S | | | | | | | | | | | | | | | | | | | | +| date_trunc | date_trunc | | | | | | | | | | | | | | | | | | | | | | +| datediff | date_diff | | S | | | | | | | | | S | S | | | | | | | | | | +| day | day | | S | | | | | | | | | S | S | | | | | | | | | | +| dayofmonth | day_of_month | | S | | | | | | | | | S | S | | | | | | | | | | +| dayofweek | day_of_week,dow | | S | | | | | | | | | S | S | | | | | | | | | | +| dayofyear | day_of_year,doy | | S | | | | | | | | | S | S | | | | | | | | | | +| extract | | | | | | | | | | | | S | S | | | | | | | | | | +| from_unixtime | from_unixtime | | S | | | | | | S | | | | | | | | | | | | | | +| from_utc_timestamp | | from_utc_timestamp | S | | | | | | | | | | | | | | | | | | | | +| hour | hour | | S | | | | | | | | | | S | | | | | | | | | | +| last_day | | last_day | S | | | | | | | | | | | | | | | | | | | | +| make_date | | make_date | S | | | | | | | | | | | | | | | | | | | | +| make_dt_interval | | | | | | | | | | | | | | | | | | | | | | | +| make_interval | | | | | | | | | | | | | | | | | | | | | | | +| make_timestamp | | | | | | | | | | | | | | | | | | | | | | | +| make_ym_interval | | | | | | | | | | | | | | | | | | | | | | | +| minute | minute | | S | | | | | | | | | | | | | | | | | | | | +| month | month | | S | | | | | | | | | S | S | | | | | | | | | | +| months_between | | | | | | | | | | | | | | | | | | | | | | | +| next_day | | | S | | | | | | | | | S | | | | | | | | | | | +| now | | | S | | | | | | | | | S | S | | | | | | | | | | +| quarter | quarter | | S | | | | | | | | | S | S | | | | | | | | | | +| second | second | | S | | | | | | | | | | | | | | | | | | | | +| session_window | | | | | | | | | | | | | | | | | | | | | | | +| timestamp | | | | | | | | | | | | | | | | | | | | | | | +| timestamp_micros | | timestamp_micros | S | | | | | | | | | | | | | | | | | | | | +| timestamp_millis | | timestamp_millis | S | | | | | | | | | | | | | | | | | | | | +| timestamp_seconds | | | | | | | | | | | | | | | | | | | | | | | +| to_date | | | S | | | | | | | | | S | S | | | | | | | | | | +| to_timestamp | | | | | | | | | | | | | | | | | | | | | | | +| to_unix_timestamp | to_unixtime | to_unix_timestamp | S | | | | | | | | | | | | | | | | | | | | +| to_utc_timestamp | | | | | | | | | | | | | | | | | | | | | | | +| trunc | | | | | | | | | | | | | | | | | | | | | | | +| unix_timestamp | | unix_timestamp | | | | | | | | | | | | | | | | | | | | | +| unix_seconds | | unix_seconds | S | | | | | | | | | | | | | | | | | | | | +| unix_millis | | unix_millis | S | | | | | | | | | | | | | | | | | | | | +| unix_micros | | unix_micros | S | | | | | | | | | | | | | | | | | | | | +| weekday | | | S | | | | | | | | | S | | | | | | | | | | | +| weekofyear | week,week_of_year | | S | | | | | | | | | | | | | | | | | | | | +| window | | | | | | | | | | | | | | | | | | | | | | | +| year | year | year | S | | | | | | | | | S | S | | | | | | | | | | +| aggregate | | aggregate | S | | | | | | | | | | | | | | | | | | | | +| any | | | | | | | | | | | | | | | | | | | | | | | +| approx_count_distinct | approx_distinct | | S | | S | S | S | S | S | S | S | S | | S | | | | | | | | | +| approx_percentile | | | | | | | | | | | | | | | | | | | | | | | +| avg | avg | | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| bool_and | | | | | | | | | | | | | | | | | | | | | | | +| bool_or | | | | | | | | | | | | | | | | | | | | | | | +| collect_list | | | S | | | | | | | | | | | | | | | | | | | | +| collect_set | | | S | | | | | | | | | | | | | | | | | | | | +| corr | corr | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| count | count | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| count_if | count_if | | | | | S | S | S | S | S | | | | | | | | | | | | | +| count_min_sketch | | | | | | | | | | | | | | | | | | | | | | | +| covar_pop | covar_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| covar_samp | covar_samp | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| every | | | | | | | | | | | | | | | | | | | | | | | +| first | | first | S | | | | | | | | | | | | | | | | | | | | +| first_value | | first_value | S | | | | | | | | | | | | | | | | | | | | +| grouping | | | | | | | | | | | | | | | | | | | | | | | +| grouping_id | | | | | | | | | | | | | | | | | | | | | | | +| kurtosis | kurtosis | kurtosis | S | | | | S | S | S | S | S | | | | | | | | | | | | +| last | | last | S | | | | | | | | | | | | | | | | | | | | +| last_value | | last_value | S | | | | | | | | | | | | | | | | | | | | +| max | max | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| max_by | | | S | | | | | | | | | | | | | | | | | | | | +| mean | avg | | S | ANSI OFF | | | | | | | | | | | | | | | | | | | +| min | min | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| min_by | | | S | | | | | | | | | | | | | | | | | | | | +| regr_avgx | regr_avgx | regr_avgx | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_avgy | regr_avgy | regr_avgy | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_count | regr_count | regr_count | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_r2 | regr_r2 | regr_r2 | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_intercept | regr_intercept | regr_intercept | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_slope | regr_slope | regr_slope | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_sxy | regr_sxy | regr_sxy | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_sxx | regr_sxx | regr_sxx | S | | | | S | S | S | S | S | | | | | | | | | | | | +| regr_syy | regr_syy | regr_syy | S | | | | S | S | S | S | S | | | | | | | | | | | | +| skewness | skewness | skewness | S | | | | S | S | S | S | S | | | | | | | | | | | | +| some | | | | | | | | | | | | | | | | | | | | | | | +| std,stddev | stddev | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| stddev,std | stddev | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| stddev_pop | stddev_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| stddev_samp | stddev_samp | | S | | | | S | S | S | S | S | | | | | | | | | | | | +| sum | sum | | S | ANSI OFF | | S | S | S | S | S | | | | | | | | | | | | | +| var_pop | var_pop | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| var_samp | var_samp | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| variance | variance | | S | | | S | S | S | S | S | | | | | | | | | | | | | +| cume_dist | cume_dist | | S | | | | | | | | | | | | | | | | | | | | +| dense_rank | dense_rank | | S | | | | | | | | | | | | | | | | | | | | +| lag | | | S | | | | | | | | | | | | | | | | | | | | +| lead | | | S | | | | | | | | | | | | | | | | | | | | +| nth_value | nth_value | nth_value | PS | | | | | | | | | | | | | | | | | | | | +| ntile | ntile | ntile | S | | | | | | | | | | | | | | | | | | | | +| percent_rank | percent_rank | | S | | | | | | | | | | | | | | | | | | | | +| rank | rank | | S | | | | | | | | | | | | | | | | | | | | +| row_number | row_number | | S | | | | S | S | S | | | | | | | | | | | | | | +| from_csv | | | | | | | | | | | | | | | | | | | | | | | +| from_json | | | | | | | | | | | | | | | | | | | | | | | +| get_json_object | json_extract_scalar | get_json_object | S | | | | | | | | | | | | | | | | | | S | | +| json_array_length | json_array_length | | S | | | | | | | | | | | | | | | | | | S | | +| json_tuple | | | | | | | | | | | | | | | | | | | | | | | +| schema_of_csv | | | | | | | | | | | | | | | | | | | | | | | +| schema_of_json | | | | | | | | | | | | | | | | | | | | | | | +| to_csv | | | | | | | | | | | | | | | | | | | | | | | +| to_json | | | | | | | | | | | | | | | | | | | | | | | +| assert_true | | | S | | | | | | | | | | | | | | | | | | | | +| coalesce | | | PS | | | | | | | | | | | | | | | | | | | | +| crc32 | crc32 | | S | | | | | | | | | | | S | | | | | | | | | +| current_user | | | S* | | | | | | | | | | | S | | | | | | | | | +| current_catalog | | | S | | | | | | | | | | | | | | | | | | | | +| current_database | | | S | | | | | | | | | | | | | | | | | | | | +| greatest | greatest | greatest | S | | | | | | S | S | S | S | S | | | | | | | | | | +| hash | hash | hash | S | | S | S | S | S | S | S | S | | | | | | | | | | | | +| inline | | | | | | | | | | | | | | | | | | | | | | | +| inline_outer | | | | | | | | | | | | | | | | | | | | | | | +| input_file_name | | | S | | | | | | | | | | | | | | | | | | | | +| input_file_block_length | | | S | | | | | | | | | | | | | | | | | | | | +| input_file_block_start | | | S | | | | | | | | | | | | | | | | | | | | +| java_method | | | | | | | | | | | | | | | | | | | | | | | +| least | least | least | S | | | | | | S | S | S | S | S | | | | | | | | | | +| md5 | md5 | | S | | | S | | | | | | | | | | | | | | | | | +| monotonically_increasing_id | | | S | | | | | | | | | | | | | | | | | | | | +| nanvl | | | S | | | | | | | | | | | | | | | | | | | | +| nvl | | | | | | | | | | | | | | | | | | | | | | | +| nvl2 | | | | | | | | | | | | | | | | | | | | | | | +| raise_error | | raise_error | S | | | | | | | | | | | | | | | | | | | | +| reflect | | | | | | | | | | | | | | | | | | | | | | | +| sha | | | S | | | | | | | | | | | S | | | | | | | | | +| sha1 | sha1 | sha1 | S | | | | | | | | | | | S | | | | | | | | | +| sha2 | | sha2 | S | | | | | | | | | | | S | | | | | | | | | +| spark_partition_id | | | S | | | | | | | | | | | | | | | | | | | | +| stack | | | S | | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | +| xxhash64 | xxhash64 | xxhash64 | | | | | | | | | | | | | | | | | | | | | +| uuid | uuid | uuid | S | | | | | | | | | | | | | | | | | | | | +| rand | rand | rand | S | | | | | | | | | | | | | | | | | | | | +| try_add | | | S | | | | | | | | | | | | | | | | | | | | +| try_substract | | | S | | | | | | | | | | | | | | | | | | | | +| try_multiply | | | S | | | | | | | | | | | | | | | | | | | | +| try_divide | | | S | | | | | | | | | | | | | | | | | | | |