显示函数
描述
返回应用可选正则表达式模式后的函数列表。
鉴于Spark支持的函数数量相当庞大,该语句
结合
describe function
可用于快速查找函数及理解其用法。
LIKE
子句是可选的,仅为与其他系统的兼容性而支持。
语法
SHOW [ function_kind ] FUNCTIONS [ { FROM | IN } database_name ] [ LIKE regex_pattern ]
参数
-
function_kind
指定要搜索的函数的命名空间。有效的命名空间包括:
- USER - 在用户定义的函数中查找函数。
- SYSTEM - 在系统定义的函数中查找函数。
- ALL - 在用户和系统定义的函数中查找函数。
-
{ FROM
|
IN } database_name指定列出函数的数据库名称。
-
regex_pattern
指定用于过滤语句结果的正则表达式模式。
-
除了
*
和|
字符外,该模式的工作方式与正则表达式相同。 -
*
单独匹配 0 个或多个字符,|
用于分隔多个不同的正则表达式,任何一个都可以匹配。 - 输入模式中的前导和尾随空格在处理前被修剪。模式匹配不区分大小写。
-
除了
示例
-- 列出定义的系统函数 `trim` ,同时搜索用户定义和系统定义的函数。
-- 定义的函数。
SHOW FUNCTIONS trim;
+--------+
|function|
+--------+
| trim|
+--------+
-- 列出系统函数 `concat` ,通过搜索系统定义的函数。
SHOW SYSTEM FUNCTIONS concat;
+--------+
|function|
+--------+
| concat|
+--------+
-- 从数据库 `salesdb` 列出合格的函数 `max` 。
SHOW SYSTEM FUNCTIONS FROM salesdb LIKE 'max';
+--------+
|function|
+--------+
| max|
+--------+
-- 列出所有以 `t` 开头的函数
SHOW FUNCTIONS LIKE 't*';
+-----------------+
| function|
+-----------------+
| tan|
| tanh|
| timestamp|
| tinyint|
| to_csv|
| to_date|
| to_json|
| to_timestamp|
|to_unix_timestamp|
| to_utc_timestamp|
| transform|
| transform_keys|
| transform_values|
| translate|
| trim|
| trunc|
| typeof|
+-----------------+
-- 列出所有以 `yea` 或 `windo` 开头的函数
SHOW FUNCTIONS LIKE 'yea*|windo*';
+--------+
|function|
+--------+
| window|
| year|
+--------+
-- 使用普通正则模式列出函数名称,以 `t` 为起始字符且具有 4 个字符
-- 的函数。
SHOW FUNCTIONS LIKE 't[a-z][a-z][a-z]';
+--------+
|function|
+--------+
| tanh|
| trim|
+--------+