lava-oushudb-dt-sql-parser/test/parser/impala/syntax/fixtures/create_function.sql
霜序 e203f1a48a
feat: support impala (#184)
* feat(impala): add impala sqlLexer

* feat(impala): add impala grammar

* feat(impala): add alter table sql

* feat(impala): update alter table sql

* feat(impala): add alter db sql

* feat(impala): add alter view sql

* feat(impala): add compute stats/comment statement and update partition_desc for alter table

* feat(impala): add drop statement sql

* feat(impala): add revoke and grant sql

* feat(impala): add create db/function/role/view sql

* feat(impala): add describe/explain/invalidata_metadata/load_data sql

* feat(impala): add refresh/set/shutdown sql

* feat(impala): add truncate_table/use/values sql

* fix(impala): update shutdown and invaliddate_metadata

* feat(impala): add show/update/upsert sql

* feat(impala): add create/insert sql

* feat(impala): add select and delete sql

* feat(impala): add impala tokens and fix todo

* feat(impala): update impalaparser and some test unit

* feat(impala): add syntax suggestion

* feat(impala): add syntax suggestion

* feat(impala): update test unit

* feat(impala): remove reference

* fix(impala): add statement for sqlname and collect tableName

* fix(impala): fix syntax suggestion unit test

* fix(impala): update syntax suggestion and collect column

* feat(impala): add collect column create
2023-11-28 21:11:07 +08:00

83 lines
2.6 KiB
SQL

/* CREATE FUNCTION [IF NOT EXISTS] [db_name.]function_name([arg_type[, arg_type...])
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name' */
CREATE FUNCTION function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION db_name.function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION IF NOT EXISTS function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION IF NOT EXISTS db_name.function_name(arg_type1)
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION IF NOT EXISTS db_name.function_name(arg_type1, arg_type2, arg_type3)
RETURNS return_type
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
/* CREATE FUNCTION [IF NOT EXISTS] [db_name.]function_name
LOCATION 'hdfs_path_to_jar'
SYMBOL='class_name' */
CREATE FUNCTION function_name
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION db_name.function_name
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION IF NOT EXISTS function_name
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
CREATE FUNCTION IF NOT EXISTS db_name.function_name
LOCATION 'hdfs_path_to_dot_so'
SYMBOL='symbol_name';
/* CREATE [AGGREGATE] FUNCTION [IF NOT EXISTS] [db_name.]function_name([arg_type[, arg_type...])
RETURNS return_type
[INTERMEDIATE type_spec]
LOCATION 'hdfs_path'
[INIT_FN='function]
UPDATE_FN='function
MERGE_FN='function
[PREPARE_FN='function]
[CLOSEFN='function]
[SERIALIZE_FN='function]
[FINALIZE_FN='function] */
CREATE AGGREGATE FUNCTION function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path'
UPDATE_FN='update_function'
MERGE_FN='merge_function';
CREATE AGGREGATE FUNCTION db_name.function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path'
UPDATE_FN='update_function'
MERGE_FN='merge_function';
CREATE AGGREGATE FUNCTION IF NOT EXISTS function_name(arg_type1, arg_type2)
RETURNS return_type
LOCATION 'hdfs_path'
UPDATE_FN='update_function'
MERGE_FN='merge_function';
CREATE AGGREGATE FUNCTION function_name(arg_type1, arg_type2)
RETURNS return_type
INTERMEDIATE intermediate_type
LOCATION 'hdfs_path'
INIT_FN ='init_function'
UPDATE_FN='update_function'
MERGE_FN='merge_function'
PREPARE_FN = 'prepare_fn'
CLOSEFN = 'closefn'
SERIALIZE_FN = 'serialize_function'
FINALIZE_FN = 'finalize_function';
-- example
create function my_func location '/user/impala/udfs/udf-examples.jar'
symbol='org.apache.impala.TestUdf';