DESCRIBE FUNCTION (DMF)¶
Beschreibt die angegebene Datenmetrikfunktion (DMF), einschließlich der Signatur (Argumente), des Rückgabewerts, der Sprache und des Textkörpers (Definition).
Syntax¶
{ DESC | DESCRIBE } FUNCTION [ IF EXISTS ] <name>(
TABLE( <arg_data_type> [ , ... ] ) [ , TABLE( <arg_data_type> [ , ... ] ) ]
)
Parameter¶
nameGibt den Bezeichner der zu beschreibenden Funktion an.
Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
TABLE( arg_data_type [ , ... ] ) [ , TABLE( arg_data_type [ , ... ] ) ]Gibt den Datentyp der Spaltenargumente für die DMF an. Die Datentypen sind notwendig, weil DMFs das Überladung von Namen unterstützen (d. h. zwei DMFs im selben Schema können denselben Namen haben), und die Datentypen des Arguments werden verwendet, um die DMF zu identifizieren, die Sie beschreiben möchten.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
|---|---|---|
USAGE |
Datenmetrikfunktion |
Für das Ausführen von Operationen für ein Objekt in einem Schema ist mindestens eine Berechtigung für die übergeordnete Datenbank und mindestens eine Berechtigung für das übergeordnete Schema erforderlich.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Nutzungshinweise¶
Um die Ausgabe dieses Befehls nachzubearbeiten, können Sie den Befehl Pipe-Operator (
->>) oder die RESULT_SCAN-Funktion verwenden. Beide Konstrukte behandeln die Ausgabe als Resultset, das Sie abfragen können.Sie können zum Beispiel den Pipe-Operator oder die RESULT_SCAN-Funktion verwenden, um bestimmte Spalten aus der SHOW-Befehlsausgabe auszuwählen oder die Zeilen zu filtern.
Wenn Sie sich auf die Ausgabespalten beziehen, verwenden Sie Bezeichner mit doppelten Anführungszeichen für die Spaltennamen. Um beispielsweise die Ausgabespalte
typeauszuwählen, geben SieSELECT "type"an.Sie müssen Bezeichner in doppelten Anführungszeichen verwenden, da die Ausgabespaltennamen für SHOW-Befehle in Kleinbuchstaben geschrieben sind. Die doppelten Anführungszeichen stellen sicher, dass die Spaltennamen in der SELECT-Liste oder WHERE-Klausel den Spaltennamen in der SHOW-Befehlsausgabe entsprechen, die gescannt wurde.
Beispiel¶
Beschreiben Sie die DMF, um ihre Eigenschaften anzuzeigen:
DESC FUNCTION governance.dmfs.count_positive_numbers(
TABLE(
NUMBER, NUMBER, NUMBER
)
);
+-----------+---------------------------------------------------------------------+
| property | value |
+-----------+---------------------------------------------------------------------+
| signature | (ARG_T TABLE(ARG_C1 NUMBER, ARG_C2 NUMBER, ARG_C3 NUMBER)) |
| returns | NUMBER(38,0) |
| language | SQL |
| body | SELECT COUNT(*) FROM arg_t WHERE arg_c1>0 AND arg_c2>0 AND arg_c3>0 |
+-----------+---------------------------------------------------------------------+