-
Notifications
You must be signed in to change notification settings - Fork 29k
[SPARK-28797][DOC] Document DROP FUNCTION statement in SQL Reference. #25553
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 8 commits
104ccd4
1c02c3d
e90795a
ef97031
f458a7e
9b3e2f9
54aad6b
c9b7314
24a13f8
48f925a
1d3b665
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,4 +19,87 @@ license: | | |
| limitations under the License. | ||
| --- | ||
|
|
||
| **This page is under construction** | ||
| ### Description | ||
| `DROP FUNCTION` statement drops a temporary or user defined function(UDF). An exception will be thrown if the function does not exist | ||
| in the system. | ||
|
|
||
| ### Syntax | ||
| {% highlight sql %} | ||
| DROP [TEMPORARY] FUNCTION [IF EXISTS] [db_name.]function_name; | ||
| {% endhighlight %} | ||
|
|
||
|
|
||
| ### Parameters | ||
|
|
||
| <dl> | ||
| <dt><code><em>function_name</em></code></dt> | ||
| <dd>The name of an existing function.</dd> | ||
| </dl> | ||
|
|
||
| <dl> | ||
| <dt><code><em>TEMPORARY</em></code></dt> | ||
| <dd>Should be used to delete the `temporary` function.</dd> | ||
| </dl> | ||
|
|
||
| <dl> | ||
| <dt><code><em>IF EXISTS</em></code></dt> | ||
| <dd>If specified, no exception is thrown when the function does not exist.</dd> | ||
| </dl> | ||
|
|
||
| ### Example | ||
| {% highlight sql %} | ||
| -- Create a permanent function `test_avg` | ||
| CREATE FUNCTION test_avg as 'org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage'; | ||
|
|
||
| -- List user functions | ||
| SHOW USER FUNCTIONS; | ||
| +-------------------+ | ||
| | function | | ||
| +-------------------+ | ||
| | default.test_avg | | ||
| +-------------------+ | ||
|
|
||
| -- Create Temporary function `test_avg` | ||
| CREATE TEMPORARY FUNCTION test_avg as 'org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage'; | ||
|
|
||
| -- List user functions | ||
| SHOW USER FUNCTIONS; | ||
| +-------------------+ | ||
| | function | | ||
| +-------------------+ | ||
| | default.test_avg | | ||
| | test_avg | | ||
| +-------------------+ | ||
|
|
||
| -- Drop Permanent function | ||
| DROP FUNCTION test_avg; | ||
sandeep-katta marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| +---------+ | ||
| | Result | | ||
| +---------+ | ||
| +---------+ | ||
|
|
||
| -- Try to drop Permanent function which is not present | ||
| DROP FUNCTION test_avg; | ||
| Error: Error running query: | ||
| org.apache.spark.sql.catalyst.analysis.NoSuchPermanentFunctionException: | ||
| Function 'default.test_avg' not found in database 'default'; (state=,code=0) | ||
|
|
||
| -- List the functions after dropping, it should list only temporary function | ||
| SHOW USER FUNCTIONS; | ||
| +-----------+ | ||
| | function | | ||
| +-----------+ | ||
| | temp_avg | | ||
|
||
| +-----------+ | ||
|
|
||
| -- Drop Temporary function | ||
| DROP TEMPORARY FUNCTION IF EXISTS temp_avg; | ||
|
||
| +---------+ | ||
| | Result | | ||
| +---------+ | ||
| +---------+ | ||
| {% endhighlight %} | ||
| ### Related statements | ||
| - [CREATE FUNCTION](sql-ref-syntax-ddl-create-function.html) | ||
| - [DESCRIBE FUNCTION](sql-ref-syntax-aux-describe-function.html) | ||
| - [SHOW FUNCTION](sql-ref-syntax-aux-show-functions.html) | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: Add "The" at the start. Also, space before (UDF). What does 'in the system' mean - can we just drop this or make it more specific?