diff --git a/docs/sql-ref-syntax-aux-describe-function.md b/docs/sql-ref-syntax-aux-describe-function.md index 1c50708556765..d3dc1920642f6 100644 --- a/docs/sql-ref-syntax-aux-describe-function.md +++ b/docs/sql-ref-syntax-aux-describe-function.md @@ -34,7 +34,7 @@ metadata information is returned along with the extended usage information.
function_name
- Specifies a name of an existing function in the syetem. The function name may be + Specifies a name of an existing function in the system. The function name may be optionally qualified with a database name. If `function_name` is qualified with a database then the function is resolved from the user specified database, otherwise it is resolved from the current database.

diff --git a/docs/sql-ref-syntax-aux-show-functions.md b/docs/sql-ref-syntax-aux-show-functions.md index ae689fdf227e9..db026071e6a59 100644 --- a/docs/sql-ref-syntax-aux-show-functions.md +++ b/docs/sql-ref-syntax-aux-show-functions.md @@ -19,4 +19,121 @@ license: | limitations under the License. --- -**This page is under construction** +### Description +Returns the list of functions after applying an optional regex pattern. +Given number of functions supported by Spark is quite large, this statement +in conjuction with [describe function](sql-ref-syntax-aux-describe-function.html) +may be used to quickly find the function and understand its usage. The `LIKE` +clause is optional and supported only for compatibility with other systems. + +### Syntax +{% highlight sql %} +SHOW [ function_kind ] FUNCTIONS ([LIKE] function_name | regex_pattern) +{% endhighlight %} + +### Parameters +
+
function_kind
+
+ Specifies the name space of the function to be searched upon. The valid name spaces are : +
    +
  • USER - Looks up the function(s) among the user defined functions.
  • +
  • SYSTEM - Looks up the function(s) among the system defined functions.
  • +
  • ALL - Looks up the function(s) among both user and system defined functions.
  • +
+
+
function_name
+
+ Specifies a name of an existing function in the system. The function name may be + optionally qualified with a database name. If `function_name` is qualified with + a database then the function is resolved from the user specified database, otherwise + it is resolved from the current database.

+ Syntax: + + [database_name.]function_name + +
+
regex_pattern
+
+ Specifies a regular expression pattern that is used to limit the results of the + statement. +
    +
  • Only `*` and `|` are allowed as wildcard pattern.
  • +
  • Excluding `*` and `|` the remaining pattern follows the regex semantics.
  • +
  • The leading and trailing blanks are trimmed in the input pattern before processing.
  • +
+
+
+ +### Examples +{% highlight sql %} +-- List a system function `trim` by searching both user defined and system +-- defined functions. +SHOW FUNCTIONS trim; + +--------+ + |function| + +--------+ + |trim | + +--------+ + +-- List a system function `concat` by searching system defined functions. +SHOW SYSTEM FUNCTIONS concat; + +--------+ + |function| + +--------+ + |concat | + +--------+ + +-- List a qualified function `max` from database `salesdb`. +SHOW SYSTEM FUNCTIONS salesdb.max; + +--------+ + |function| + +--------+ + |max | + +--------+ + +-- List all functions starting with `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 | + +-----------------+ + +-- List all functions starting with `yea` or `windo` +SHOW FUNCTIONS LIKE 'yea*|windo*'; + +--------+ + |function| + +--------+ + |window | + |year | + +--------+ + +-- Use normal regex pattern to list function names that has 4 characters +-- with `t` as the starting character. +SHOW FUNCTIONS LIKE 't[a-z][a-z][a-z]'; + +--------+ + |function| + +--------+ + |tanh | + |trim | + +--------+ +{% endhighlight %} + +### Related statements +- [DESCRIBE FUNCTION](sql-ref-syntax-aux-describe-function.html)