Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Die Fensterfunktionen STDDEV_SAMP und STDDEV_POP geben die Stichproben- und Populationsstandardabweichungen eines Satzes numerischer Werte (integer, decimal oder floating-point) zurück. Weitere Informationen finden Sie auch unter Die Funktionen STDDEV_SAMP und STDDEV_POP.
STDDEV_SAMP und STDDEV sind Synonyme für dieselbe Funktion.
Syntax
STDDEV_SAMP | STDDEV | STDDEV_POP ( [ ALL ] expression ) OVER ( [ PARTITION BY expr_list ] [ ORDER BY order_list frame_clause ] )
Argumente
- Ausdruck
-
Die Zielspalte oder der Ausdruck, für die/den die Funktion ausgeführt wird.
- ALL
-
Mit dem Argument ALL behält die Funktion alle duplizierten Werte aus dem Ausdruck bei. ALL ist das Standardargument. DISTINCT wird nicht unterstützt.
- OVER
-
Gibt die Fensterklauseln für die Aggregationsfunktionen an. Die OVER-Klausel unterscheidet Fensteraggregationsfunktionen von normalen Satzaggregationsfunktionen.
- PARTITION BY expr_list
-
Definiert das Fenster für die Funktion in Bezug auf mindestens einen Ausdruck.
- ORDER BY order_list
-
Sortiert die Zeilen innerhalb der einzelnen Partitionen. Wenn PARTITION BY nicht angegeben ist, verwendet ORDER BY die gesamte Tabelle.
- frame_clause
-
Wenn eine ORDER BY-Klausel für eine Aggregationsfunktion verwendet wird, ist eine explizite Rahmenklausel erforderlich. Die Rahmenklausel gibt den Satz von Zeilen im Fenster einer Funktion genauer an, einschließlich oder ausschließlich Sätzen von Zeilen innerhalb des geordneten Ergebnisses. Die Rahmenklausel besteht aus dem Schlüsselwort ROWS und verknüpften Spezifikatoren. Siehe Übersicht über die Syntax von Fensterfunktionen.
Datentypen
Die von den STDDEV-Funktion SUM unterstützten Argumenttypen sind SMALLINT, INTEGER, BIGINT, NUMERIC, DECIMAL, REAL und DOUBLE PRECISION.
Unabhängig vom Datentyp des Ausdrucks ist der Rückgabewert einer STDDEV-Funktion eine DOUBLE PRECISION-Zahl.
Beispiele
Das folgende Beispiel zeigt, wie die Funktionen STDDEV_POP und VAR_POP als Fensterfunktionen verwendet werden. Die Abfrage berechnet Populationsvarianz und Populationsstandardabweichung für PRICEPAID-Werte in der Tabelle SALES.
select salesid, dateid, pricepaid,
round(stddev_pop(pricepaid) over
(order by dateid, salesid rows unbounded preceding)) as stddevpop,
round(var_pop(pricepaid) over
(order by dateid, salesid rows unbounded preceding)) as varpop
from sales
order by 2,1;
salesid | dateid | pricepaid | stddevpop | varpop
--------+--------+-----------+-----------+---------
33095 | 1827 | 234.00 | 0 | 0
65082 | 1827 | 472.00 | 119 | 14161
88268 | 1827 | 836.00 | 248 | 61283
97197 | 1827 | 708.00 | 230 | 53019
110328 | 1827 | 347.00 | 223 | 49845
110917 | 1827 | 337.00 | 215 | 46159
150314 | 1827 | 688.00 | 211 | 44414
157751 | 1827 | 1730.00 | 447 | 199679
165890 | 1827 | 4192.00 | 1185 | 1403323
...
Die Funktionen für Stichprobenstandardabweichung und -varianz können auf die gleiche Weise verwendet werden.