Kategorien:

Aggregatfunktionen (General) , Syntax und Verwendung von Fensterfunktionen

KURTOSIS

Gibt den Exzess (Überkurtosis) der Probe von Nicht-NULL-Datensätzen zurück. Wenn alle Datensätze in einer Gruppe NULL sind, gibt die Funktion NULL zurück.

Die folgende Formel wird verwendet, um den Exzess (Überkurtosis) der Probe zu berechnen:

\[(n * (n+1))/((n-1) * (n-2) * (n-3)) * (n *m_4/(k_2)^2) - 3 * (n-1)^2 / ((n-2) * (n-3))\]

Wobei:

  • \(n\) gibt die Anzahl der Nicht-NULL-Datensätze an.

  • \(m_4\) bezeichnet das vierte zentrale Moment der Stichprobe.

  • \(k_2\) bezeichnet den symmetrischen, unverzerrten Schätzer der Varianz.

Syntax

Aggregatfunktion

KURTOSIS( <expr> )
Copy

Fensterfunktionen

KURTOSIS( <expr> ) OVER ( [ PARTITION BY <expr2> ] )
Copy

Argumente

expr

Ein Ausdruck, der einen numerischen Datentyp ergibt (z. B. INTEGER, FLOAT, DECIMAL usw.).

expr2

Ein Ausdruck, der die einzelnen Gruppen oder Fenster definiert.

Rückgabewerte

Gibt DOUBLE zurück, wenn der Eingabedatentyp DOUBLE/FLOAT ist.

Gibt DECIMAL zurück, wenn der Eingabedatentyp ein anderer numerischer Datentyp ist.

Nutzungshinweise

  • Bei Eingaben mit weniger als vier Datensätzen gibt KURTOSIS den Wert NULL zurück.

  • Wenn diese Funktion als Fensterfunktion aufgerufen wird, wird sie nicht unterstützt:

    • Eine ORDER BY-Klausel innerhalb der OVER-Klausel.

    • Explizite Fensterrahmen.

Beispiele

Erstellen Sie eine Tabelle und fügen Sie einige Zeilen ein:

CREATE OR REPLACE TABLE aggr(k INT, v DECIMAL(10,2), v2 DECIMAL(10, 2));

INSERT INTO aggr VALUES
  (1, 10, null),
  (2, 10, 12),
  (2, 20, 22),
  (2, 25, null),
  (2, 30, 35);
Copy

Wählen Sie alle Daten aus der Tabelle aus:

SELECT * FROM aggr
  ORDER BY k, v;
Copy
+---+-------+-------+
| K |     V |    V2 |
|---+-------+-------|
| 1 | 10.00 |  NULL |
| 2 | 10.00 | 12.00 |
| 2 | 20.00 | 22.00 |
| 2 | 25.00 |  NULL |
| 2 | 30.00 | 35.00 |
+---+-------+-------+

Geben Sie den KURTOSIS -Wert für jede Spalte zurück:

SELECT KURTOSIS(k), KURTOSIS(v), KURTOSIS(v2)
  FROM aggr;
Copy
+----------------+-----------------+--------------+
|    KURTOSIS(K) |     KURTOSIS(V) | KURTOSIS(V2) |
|----------------+-----------------+--------------|
| 5.000000000000 | -2.324218750000 |         NULL |
+----------------+-----------------+--------------+