Kategorien:

Aggregatfunktionen (Linear Regression) , Syntax und Verwendung von Fensterfunktionen

REGR_INTERCEPT

Gibt den Schnittpunkt der univariaten linearen Regressionslinie für Nicht-Null-Paare in einer Gruppe zurück. Der Wert wird für Nicht-Null-Paare mit folgender Formel berechnet:

AVG(y)-REGR_SLOPE(y,x)*AVG(x)

Dabei ist x die unabhängige Variable und y die abhängige Variable.

Syntax

Aggregatfunktionen

REGR_INTERCEPT(y, x)
Copy

Fensterfunktionen

REGR_INTERCEPT(y, x) OVER ( [ PARTITION BY <expr3> ] )
Copy

Argumente

y

Die abhängige Variable. Dies muss ein Ausdruck sein, der zu einem numerischen Typ ausgewertet werden kann.

x

Die unabhängige Variable. Dies muss ein Ausdruck sein, der zu einem numerischen Typ ausgewertet werden kann.

expr3

Dies ist der optionale Ausdruck zum Gruppieren von Zeilen in Partitionen.

Wichtig

Beachten Sie die Reihenfolge der Argumente. Die abhängige Variable ist die erste.

Nutzungshinweise

  • DISTINCT wird bei dieser Funktion nicht unterstützt.

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

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

    • Explizite Fensterrahmen.

Beispiele

CREATE OR REPLACE TABLEE aggr(k INT, v DECIMAL(10,2), v2 DECIMAL(10, 2));
INSERT INTO aggr VALUES(1, 10, null);
INSERT INTO aggr VALUES(2, 10, 11), (2, 20, 22), (2, 25, null), (2, 30, 35);

SELECT k, REGR_INTERCEPT(v, v2) FROM aggr GROUP BY k;
Copy
+---+-----------------------+
| k | regr_intercept(v, v2) |
|---+-----------------------|
| 1 | [NULL]                |
| 2 | 1.154734411           |
+---+-----------------------+