SHOW FUNCTION / FUNCTIONS¶
SHOW FUNCTIONS命令显示当前 Schema 中的所有函数。SHOW FUNCTION <function_name>命令显示与指定名称匹配的函数。
如果当前用户没有当前 Schema 的USAGE,仍会返回内置 Function,但不会返回该 Schema 中的 UDF。更多信息,请参见 Schema 访问控制。
下表展示返回的信息:
| 列 | 描述 |
|---|---|
name |
函数的名称。 |
signature |
函数的签名。若函数是可变参数函数,则其最后一个入参末尾会带有省略号(...)标记。 |
comment |
函数的描述。 |
如需查看额外的列,包括函数的category和null_behavior,可以使用VERBOSE选项。参见语法。
使用VERBOSE选项时,会返回以下额外的列:
| 列 | 描述 |
|---|---|
category |
函数的类别。有效值:SCALAR、AGGREGATE、GQL UDF。
|
null_behavior |
函数的 NULL 值处理行为。有效值:DEFAULT(若任意参数为 NULL 则返回 NULL)、CUSTOM(自定义 NULL 处理)、IGNORE(聚合时忽略 NULL 值)。 |
语法¶
- show_functions_command
- show_specific_function_statement
- optional_function_category
show_functions_command ::=
'SHOW' optional_function_category 'FUNCTIONS' 'VERBOSE'?
show_specific_function_statement ::=
'SHOW' optional_function_category 'FUNCTION' function_name 'VERBOSE'?
optional_function_category ::=
'SCALAR' | 'AGGREGATE' | 'ALL' | 'USER DEFINED' | 'GQL USER DEFINED'
optional_function_category:按类别过滤函数。若省略,则显示所有函数。VERBOSE:若指定,则输出中会包含额外的category和null_behavior列。
参数¶
function_name¶
要显示的函数的名称。
支持指定正则表达式来匹配多个函数。正则表达式必须用双引号(")或反引号(`)包围。例如,SHOW FUNCTION "collect.*"可匹配所有名称以collect开头的函数。
示例¶
显示所有函数¶
SHOW FUNCTIONS
返回:
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+
| name | signature | comment |
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+
| * | *(VECTOR, FLOAT) -> VECTOR | Multiply vector by scalar |
...
显示函数的详细信息(VERBOSE)¶
SHOW FUNCTION mod VERBOSE
返回:
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+-----------+---------------+
| name | signature | comment | category | null_behavior |
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+-----------+---------------+
| * | *(VECTOR, FLOAT) -> VECTOR | Multiply vector by scalar | SCALAR | DEFAULT |
...
显示与指定类型匹配的函数¶
SHOW SCALAR FUNCTIONS VERBOSE
返回:
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+----------+---------------+
| name | signature | comment | category | null_behavior |
+----------------------------------------------------+--------------------------------------------------------------------------+-------------------------------------------------------+----------+---------------+
| * | *(VECTOR, FLOAT) -> VECTOR | Multiply vector by scalar | SCALAR | DEFAULT |
| | *(VECTOR, INT64) -> VECTOR | | | |
| + | +(VECTOR, FLOAT) -> VECTOR | Add scalar to vector | SCALAR | DEFAULT |
| | +(VECTOR, INT64) -> VECTOR | | | |
| | +(VECTOR, VECTOR) -> VECTOR | Add two vectors | SCALAR | DEFAULT |
| - | -(VECTOR, FLOAT) -> VECTOR | Subtract scalar from vector | SCALAR | DEFAULT |
| | -(VECTOR, INT64) -> VECTOR | | | |
| | -(VECTOR, VECTOR) -> VECTOR | Subtract two vectors | SCALAR | DEFAULT |
| / | /(VECTOR, FLOAT) -> VECTOR | Divide vector by scalar | SCALAR | DEFAULT |
| | /(VECTOR, INT64) -> VECTOR | | | |
| abs | abs(VECTOR) -> VECTOR | Absolute value of vector elements | SCALAR | DEFAULT |
...
显示与指定函数名称匹配的函数¶
SHOW FUNCTION mod
返回:
+------+----------------------------------+---------+
| name | signature | comment |
+------+----------------------------------+---------+
| mod | mod(DECIMAL, DECIMAL) -> DECIMAL | Modulus |
| | mod(DOUBLE, DOUBLE) -> DOUBLE | |
| | mod(FLOAT, FLOAT) -> FLOAT | |
| | mod(INT16, INT16) -> INT16 | |
| | mod(INT32, INT32) -> INT32 | |
| | mod(INT64, INT64) -> INT64 | |
| | mod(INT8, INT8) -> INT8 | |
| | mod(UINT16, UINT16) -> UINT16 | |
| | mod(UINT32, UINT32) -> UINT32 | |
| | mod(UINT64, UINT64) -> UINT64 | |
| | mod(UINT8, UINT8) -> UINT8 | |
+------+----------------------------------+---------+
显示与指定正则表达式匹配的函数¶
SHOW FUNCTION "collect.*"
返回:
+--------------+-------------------------------------+---------------------------+
| name | signature | comment |
+--------------+-------------------------------------+---------------------------+
| collect | collect(BOOL) -> LIST | Collect values from group |
| | collect(DATE) -> LIST | |
| | collect(DECIMAL) -> LIST | |
| | collect(DOUBLE) -> LIST | |
| | collect(DURATION) -> LIST | |
| | collect(EDGE) -> LIST | |
...
| | collect(ZONEDTIME) -> LIST | |
| collect_list | collect_list(BOOL) -> LIST | Collect values from group |
| | collect_list(DATE) -> LIST | |
| | collect_list(DECIMAL) -> LIST | |
...
+--------------+-------------------------------------+---------------------------+