Kategorien:

Datengenerierungsfunktionen

NORMAL

Generiert eine normalverteilte, pseudozufällige Gleitkommazahl mit angegebenem Wert für mean (Mittelwert) und stddev (Standardabweichung).

Syntax

NORMAL( <mean> , <stddev> , <gen> )
Copy

Argumente

mean

Eine Konstante, die den Wert angibt, um den die Ausgabewerte zentriert sein sollen.

stddev

Eine Konstante, die die Breite einer Standardabweichung angibt.

Dies gibt die Breite einer Standardabweichung an. Wenn Sie beispielsweise einen Mittelwert von 0,0 und eine Standardabweichung von 1,0 wählen und dann diese Funktion mehrmals aufrufen, liegen ungefähr 68,2 % der zurückgegebenen Werte zwischen -1,0 und +1,0 (d. h. innerhalb einer Standardabweichung des Mittelwerts).

Wenn Sie einen Mittelwert von 5,0 und eine Standardabweichung von 2 wählen, liegen ungefähr 68,2 % der Werte zwischen 3,0 und 7,0.

gen

Ein Ausdruck, der als Rohdatenquelle für gleichmäßige Zufallszahlen dient, typischerweise die Funktion RANDOM. Weitere Informationen dazu finden Sie unter „Datengenerierungsfunktionen“ unter Nutzungshinweise.

Rückgabewerte

Gibt eine zufällige Gleitkommazahl zurück. Die kumulierten Ergebnisse einer großen Anzahl von wiederholten Aufrufen führen zu einer Approximation an die Normalverteilung.

Nutzungshinweise

Diese Funktion ist mit der Funktion RANDOM verwandt, unterscheidet sich aber hinsichtlich der Wertebereiche der zurückgegebenen Werte und deren Verteilung.

  • RANDOM generiert zufällige 64-Bit-Ganzzahlen mit einer gleichmäßigen Verteilung. Sie akzeptiert einen optionalen Startwert, der die Wiederholung von Zufallssequenzen ermöglicht.

    Wenn RANDOM sehr häufig aufgerufen wird, sind die Ergebnisse mehr oder weniger gleichmäßig über den Bereich der möglichen Werte verteilt. Die Anzahl der Ergebnisse mit Werten zwischen 1.000 und 2.000 ähnelt beispielsweise der Anzahl der Werte zwischen 2.000 und 3.000.

  • NORMAL generiert zufällige Ganzzahl- oder Gleitkommazahlen, die um den angegebenen Mittelwert zentriert sind und die angegebene Standardabweichung aufweisen.

    Wenn NORMAL sehr häufig aufgerufen wird, nähert sich die Verteilung der Ergebnisse wahrscheinlich einer „normal verteilten“ Kurve (oder „glockenförmigen Kurve“) an. Der Mittelpunkt der Kurve und deren „Breite“ werden von den Parametern mean und stddev beeinflusst. Werte, die näher am angegebenen Mittelwert liegen, treten häufiger auf als Werte, die weit vom Mittelwert entfernt sind.

Beispiele

Dieses Beispiel zeigt eine typische Verwendung mit einem Mittelwert von 0 und einer Standardabweichung von 1:

SELECT normal(0, 1, random()) FROM table(generator(rowCount => 5));

+------------------------+
| NORMAL(0, 1, RANDOM()) |
|------------------------|
|           0.227384164  |
|           0.9945290748 |
|          -0.2045078571 |
|          -1.594607893  |
|          -0.8213296842 |
+------------------------+
Copy

Dieses Beispiel zeigt, dass mit einer Konstante als Parameter für gen die Ausgabe ebenfalls eine Konstante ist:

SELECT normal(0, 1, 1234) FROM table(generator(rowCount => 5));

+--------------------+
| NORMAL(0, 1, 1234) |
|--------------------|
|      -0.6604156716 |
|      -0.6604156716 |
|      -0.6604156716 |
|      -0.6604156716 |
|      -0.6604156716 |
+--------------------+
Copy