Source: https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-functions/ Documentation version: v5.3.2 # SHOW FUNCTION / FUNCTIONS `SHOW FUNCTIONS`命令显示当前 Schema 中的所有函数。`SHOW FUNCTION `命令显示与指定名称匹配的函数。 如果当前用户没有当前 Schema 的`USAGE`,仍会返回内置 Function,但不会返回该 Schema 中的 UDF。更多信息,请参见 [Schema 访问控制](https://dev-docs.yueshu.com.cn/v5.3.2/server-admin/authorization/schema-access-control/)。 下表展示返回的信息: | 列 | 描述 | `name` | 函数的名称。 | `signature` | 函数的签名。若函数是可变参数函数,则其最后一个入参末尾会带有省略号(`...`)标记。 | `comment` | 函数的描述。 如需查看额外的列,包括函数的`category`和`null_behavior`,可以使用`VERBOSE`选项。参见[语法](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-functions/#_1)。 使用`VERBOSE`选项时,会返回以下额外的列: | 列 | 描述 | `category` | 函数的类别。有效值:`SCALAR`、`AGGREGATE`、`GQL UDF`。 - `SCALAR`函数返回单个值。 - `AGGREGATE`函数基于一组输入值返回单个值。 - `GQL UDF`函数是使用 GQL 编写的用户自定义函数。 | `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 | | ... +--------------+-------------------------------------+---------------------------+ ````