babefdee1c
### What changes were proposed in this pull request? Standardize sql reference ### Why are the changes needed? To have consistent docs ### Does this PR introduce any user-facing change? Yes ### How was this patch tested? Tested using jykyll build --serve Closes #26721 from huaxingao/spark-30085. Authored-by: Huaxin Gao <huaxing@us.ibm.com> Signed-off-by: Sean Owen <sean.owen@databricks.com>
105 lines
3 KiB
Markdown
105 lines
3 KiB
Markdown
---
|
|
layout: global
|
|
title: DROP FUNCTION
|
|
displayTitle: DROP FUNCTION
|
|
license: |
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
---
|
|
|
|
### Description
|
|
The `DROP FUNCTION` statement drops a temporary or user defined function (UDF). An exception will
|
|
be thrown if the function does not exist.
|
|
|
|
### 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;
|
|
+---------+
|
|
| 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 |
|
|
+-----------+
|
|
| test_avg |
|
|
+-----------+
|
|
|
|
-- Drop Temporary function
|
|
DROP TEMPORARY FUNCTION IF EXISTS test_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) |