وصف الدالة

ينطبق على:التحقق تم وضع علامة نعم على التحقق من Databricks SQL الذي تم وضع علامة عليه نعم Databricks Runtime

إرجاع معلومات بيانات التعريف الأساسية لدالة موجودة. تتضمن معلومات بيانات التعريف اسم الدالة وفئة التنفيذ وتفاصيل الاستخدام. إذا تم تحديد الخيار الاختياري EXTENDED ، يتم إرجاع معلومات بيانات التعريف الأساسية مع معلومات الاستخدام الموسعة.

بناء الجمله

{ DESC | DESCRIBE } FUNCTION [ EXTENDED ] function_name

معلمات

  • function_name

    اسم دالة موجودة في metastore. قد يكون اسم الدالة مؤهلا اختياريا باسم مخطط. إذا كان function_name مؤهلا مع مخطط، فسيتم حل الدالة من المخطط المحدد للمستخدم، وإلا يتم حلها من المخطط الحالي.

امثله

-- Describe a builtin scalar function.
-- Returns function name, implementing class and usage
> DESCRIBE FUNCTION abs;
 Function: abs
 Class: org.apache.spark.sql.catalyst.expressions.Abs
 Usage: abs(expr) - Returns the absolute value of the numeric value.

-- Describe a builtin scalar function.
-- Returns function name, implementing class and usage and examples.
> DESCRIBE FUNCTION EXTENDED abs;
 Function: abs
 Class: org.apache.spark.sql.catalyst.expressions.Abs
 Usage: abs(expr) - Returns the absolute value of the numeric value.
 Extended Usage:
     Examples:
       > SELECT abs(-1);
        1

-- Describe a builtin aggregate function
> DESCRIBE FUNCTION max;
 Function: max
 Class: org.apache.spark.sql.catalyst.expressions.aggregate.Max
 Usage: max(expr) - Returns the maximum value of `expr`.

-- Describe a builtin user defined aggregate function
-- Returns function name, implementing class and usage and examples.
> DESCRIBE FUNCTION EXTENDED explode;
 Function: explode
 Class: org.apache.spark.sql.catalyst.expressions.Explode
 Usage: explode(expr) - Separates the elements of array `expr`
  into multiple rows, or the elements of map `expr` into
  multiple rows and columns. Unless specified otherwise, use
  the default column name `col` for elements of the array or
  `key` and `value` for the elements of the map.
 Extended Usage:
     Examples:
       > SELECT explode(array(10, 20));
        10
        20

-- Describe a user defined scalar function
> CREATE FUNCTION dice(n INT) RETURNS INT
    NOT DETERMINISTIC
    COMMENT 'An n-sided dice'
    RETURN floor((rand() * n) + 1);

> DESCRIBE FUNCTION EXTENDED dice;
 Function:      default.dice
 Type:          SCALAR
 Input:         n INT
 Returns:       INT
 Comment:       An n-sided dice
 Deterministic: false
 Owner:         user
 Create Time:   Fri Apr 16 10:00:00 PDT 2021
 Body:          floor((rand() * n) + 1)