Ausführliche Erklärung und praktische Verwendung von MYSQL-Aggregatfunktionen (einschließlich Beispielen)

MySQL bietet mehrere Aggregatfunktionen zum Berechnen und Zusammenfassen eines Datensatzes. Im Folgenden sind einige gängige MySQL-Aggregatfunktionen aufgeführt.

Es wird empfohlen, es zum späteren Nachschlagen aufzubewahren.

Inhaltsverzeichnis

1. AVG-Durchschnittswert

2. Statistische Größe COUNT (Nicht-Null-Wert)

3. GROUP_CONCAT-Gruppenspalten werden zu Zeichenfolgen verkettet

4. MAX nimmt den Maximalwert an

5. MIN nimmt den Minimalwert an

6. SUM-Summe (Nicht-Null-Wert)

7. BIT_AND bitweise UND-Verknüpfung (Nicht-Null-Wert)

8. BIT_OR Bitweise ODER-Verknüpfung (Nicht-Null-Wert)

9. BIT_XOR Bitweise XOR-Operation (Nicht-Null-Wert)

10. JSON_ARRAYAGG wird in einem JSON-Array aggregiert

11. JSON_OBJECTAGG wird zu einem JSON-Objekt aggregiert

12. STD ermittelt die Gesamtstandardabweichung (ungleich Null)

13. STDDEV ermittelt die Gesamtstandardabweichung (ungleich Null)

14. STDDEV_POP Ermitteln Sie die Gesamtstandardabweichung (ungleich Null).

15. STDDEV_SAMP berechnet die Stichprobenstandardabweichung (ungleich Null).

16. VAR_POP berechnet die Populationsvarianz (ungleich Null)

17. VARIANCE berechnet die Gesamtvarianz (ungleich Null)

18. VAR_SAMP berechnet die Stichprobenvarianz (ungleich Null).


eins,AVG 求平均值

Die Funktion MySQL AVG() berechnet den Durchschnitt eines Ausdrucks und gibt ihn zurück.

忽行 NULL 值.

语法:

AVG(expr)
AVG(DISTINCT expr)

SELECT AVG(expr), ...
FROM table_name
[WHERE ...];

SELECT AVG(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr:expr Ein Ausdruck, der für Aggregationsvorgänge verwendet wird. Es kann ein Spaltenname oder ein Ausdruck sein

  • group_expr1, group_expr2, ...: Ausdruck oder Spaltenname, der für die Gruppierung verwendet wird.

返回值

  • Der Durchschnittswert des Ausdrucks.
  • Gibt NULL情况:Keine passenden Zeilen zurück.

Beispiel:

CREATE TABLE `student_score` (
    `score` INT NOT NULL
);
INSERT INTO `student_score` (`score`)
VALUES (80),
    (90),
    (84),
    (96),
    (80),
    ( 98),
    ( 75);

SELECT AVG(score) from student_score; // 86.1429

二、Statistische Menge COUNT (Nicht-Null-Wert)

Die Funktion MySQL COUNT() wird verwendet, um die Anzahl der Nicht-NULL-Werte unter allen durch den Ausdruck dargestellten Werten zu zählen.

语法:

COUNT(expr)

SELECT COUNT(expr), ...
FROM table_name
[WHERE ...];

SELECT COUNT(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr:expr Ein Ausdruck, der eine statistische Größe erfordert. Es kann ein Spaltenname oder ein Ausdruck sein.

  • group_expr1, group_expr2, ...: Ausdruck oder Spaltenname, der für die Gruppierung verwendet wird.

返回值

  • Der Ausdruck in allen Zeilen von stellt die Anzahl der anderen Werte als NULL unter allen Werten dar.
  • Hinweis: Wenn Sie COUNT(*) oder eine Anweisung ähnlich COUNT(1) verwenden, wird der Wert NULL gezählt.

Beispiel:

CREATE TABLE `student_score` (
    `score` INT
);
INSERT INTO `student_score` (`score`)
VALUES (80),
    (90),
    (84),
    (96),
    (80),
    ( 98),
    ( 75),
    ( NULL);

SELECT 
	COUNT(score),        // 7
	COUNT(*),            // 8
	COUNT(1)             // 8
	from student_score;

3. GROUP_CONCAT-Gruppenspalten werden zu Zeichenfolgen verkettet

MySQL GROUP_CONCAT() Die Funktion verkettet die Werte der angegebenen Spalten oder Ausdrücke in einer Gruppe zu einem String und gibt ihn zurück.

语法:

GROUP_CONCAT(
    [DISTINCT] expr [, expr2 ...]
    [ORDER BY ...]
    [SEPARATOR separator]
)

SELECT GROUP_CONCAT(expr), ...
FROM table_name
[WHERE ...]
[GROUP BY group_expr1, group_expr2, ...];

参数说明

  • expr [, expr2 ...]:notwendig. Es gibt eine oder mehrere Spalten oder Ausdrücke an, die verknüpft werden sollen.

  • ORDER BY: Optional. Es dient der Sortierung der zu verbindenden Inhalte.

  • SEPARATOR separator: Optional. separator -Anschluss. Der Standardwert ist ,.

返回值

  • Verkettet durch Spalten oder Ausdrücke angegebene Inhalte.
  • Rückgabe NULL情况:Die Ergebnismenge enthält keine Zeilen.

Beispiel:

DROP TABLE IF EXISTS `student_score`;
CREATE TABLE `student_score` (
    `id` INT PRIMARY KEY AUTO_INCREMENT,
    `name` VARCHAR(255) NOT NULL,
    `score` INT NOT NULL
);

SELECT
    name AS `Name`,
    GROUP_CONCAT(subject) AS `Subjects`
FROM student_score
GROUP BY name;

+------+--------------+
| Name | Subjects     |
+------+--------------+
| Tim  | English      |
| Tom  | Math,English |
+------+--------------+

----------------------------------------------------------

SELECT
    name AS `Name`,
    GROUP_CONCAT(subject SEPARATOR '/') AS `Subjects`
FROM student_score
GROUP BY name;

+------+--------------+
| Name | Subjects     |
+------+--------------+
| Tim  | English      |
| Tom  | Math/English |
+------+--------------+

----------------------------------------------------------

SELECT
    name AS `Name`,
    GROUP_CONCAT(
        CONCAT(subject, '-'), score
        ORDER BY subject
        SEPARATOR '/'
    ) AS `Scores`
FROM student_score
GROUP BY name;

SELECT
    name AS `Name`,
    GROUP_CONCAT(
        CONCAT_WS('-', subject, score)
        ORDER BY subject
        SEPARATOR '/'
    ) AS `Scores`
FROM student_score
GROUP BY name;

+------+--------------------+
| Name | Scores             |
+------+--------------------+
| Tim  | English-98         |
| Tom  | English-90/Math-80 |
+------+--------------------+

4. MAX nimmt den Maximalwert an

Die MySQL-Funktion MAX() gibt das Maximum aller durch einen Ausdruck dargestellten Werte zurück. Wenn Sie den Mindestwert in einem Ausdruck ermitteln müssen, verwenden Sie die Funktion MIN().

语法:

MAX(expr)

SELECT MAX(expr), ...
FROM table_name
[WHERE ...];

SELECT MAX(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr:expr Ein Ausdruck, der für Aggregationsvorgänge verwendet wird. Es kann ein Spaltenname oder ein Ausdruck sein

  • group_expr1, group_expr2, ...: Ausdruck oder Spaltenname, der für die Gruppierung verwendet wird.

返回值

  • Das Maximum aller durch den Ausdruck dargestellten Werte.
  • Gibt NULL情况:Keine passenden Zeilen zurück.

Beispiel:

SELECT MAX(score) from student_score;    // 98


SELECT name, MAX(score) FROM student_score GROUP BY name;
+------+------------+
| name | MAX(score) |
+------+------------+
| Tom  |         90 |
| Tim  |         98 |
+------+------------+

5. MIN nimmt den Minimalwert an

Die MySQL-Funktion MIN() gibt das Minimum aller durch einen Ausdruck dargestellten Werte zurück. Wenn Sie den Maximalwert in einem Ausdruck ermitteln müssen, verwenden Sie die Funktion MAX().

语法:

MIN(expr)

SELECT MIN(expr), ...
FROM table_name
[WHERE ...];

SELECT MIN(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr:expr Ein Ausdruck, der für Aggregationsvorgänge verwendet wird. Es kann ein Spaltenname oder ein Ausdruck sein.

  • group_expr1, group_expr2, ...: Ausdruck oder Spaltenname, der für die Gruppierung verwendet wird.

返回值

  • Das Minimum aller durch den Ausdruck dargestellten Werte.
  • Gibt NULL情况:Keine passenden Zeilen zurück.

Beispiel:

mysql> SELECT MIN(score) from student_score;

+------------+
| MIN(score) |
+------------+
|         80 |
+------------+

mysql> SELECT subject, MIN(score) FROM student_score GROUP BY subject;
+---------+------------+
| subject | MIN(score) |
+---------+------------+
| Math    |         80 |
| English |         90 |
+---------+------------+

6. SUM-Summe (Nicht-Null-Wert)

MySQL SUM() Die Funktion berechnet die Summe aller angegebenen Nicht-NULL-Werte und gibt sie zurück.

语法:

SUM(expr)

SELECT SUM(expr), ...
FROM table_name
[WHERE ...];

SELECT SUM(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr:expr Ein Ausdruck, der eine statistische Größe erfordert. Es kann ein Spaltenname oder ein Ausdruck sein.

  • group_expr1, group_expr2, ...: Ausdruck oder Spaltenname, der für die Gruppierung verwendet wird.

返回值

  • Die Summe aller angegebenen Nicht-NULL-Werte.
  • zurückkehren NULL情况:没有匹配的行。 

Beispiel:

mysql> SELECT SUM(score) from student_score;
+------------+
| SUM(score) |
+------------+
| 268        |
+------------+

mysql> SELECT name, SUM(score)FROM student_score GROUP BY name;
+------+------------+
| name | SUM(score) |
+------+------------+
| Tom  | 170        |
| Tim  | 98         |
+------+------------+

7. BIT_AND bitweise UND-Verknüpfung (Nicht-Null-Wert)

Die MySQL-Funktion BIT_AND() ist eine Aggregatfunktion, die eine „bitweise UND“-Operation für alle Eingabewerte ungleich Null ausführt. (Nur Werte ungleich Null werden verarbeitet.)
Bitweises UND verarbeitet zwei Binärzahlen mit derselben Länge. Wenn die beiden entsprechenden Binärbits beide 1 sind, ist der Ergebniswert des Bits 1 , sonst ist 0.

语法:

BIT_AND(expr)

SELECT BIT_AND(expr), ...
FROM table_name
[WHERE ...];

SELECT BIT_AND(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Der Rückgabewert ist vom gleichen Typ wie die Eingabeparameter und gibt das Ergebnis einer „bitweisen UND“-Operation für alle Eingabewerte ungleich Null zurück.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT BIT_AND(x) FROM (SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x ) t;
+------------+
| BIT_AND(x) |
+------------+
|          4 |
+------------+

 „Bitweise UND“-Operation, die Operationsschritte sind wie folgt:

4 -> 100
5 -> 101
6 -> 110
BIT_AND() = 100 = 4

8. BIT_OR Bitweise ODER-Verknüpfung (Nicht-Null-Wert)

Die MySQL-Funktion BIT_OR() ist eine Aggregatfunktion, die eine „bitweise ODER“-Operation für alle Eingabewerte ungleich Null ausführt. (Nur Werte ungleich Null werden verarbeitet.)
Bitweises ODER verarbeitet zwei Binärzahlen mit derselben Länge. Die beiden entsprechenden Binärbits sind beide 0 und der Ergebniswert dieses Bits ist 0 , sonst 1.

语法:

BIT_OR(expr)

SELECT BIT_OR(expr), ...
FROM table_name
[WHERE ...];

SELECT BIT_OR(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen Wert vom Typ Ganzzahl oder Bit.

返回值

  • Der Rückgabewert ist vom gleichen Typ wie die Eingabeparameter und gibt das Ergebnis einer „bitweisen ODER“-Operation für alle Eingabewerte ungleich Null zurück.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT BIT_OR(x) FROM (SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x ) t;
+-----------+
| BIT_OR(x) |
+-----------+
|         7 |
+-----------+

„Bitweise UND“-Operation, die Operationsschritte sind wie folgt:

4 -> 100
5 -> 101
6 -> 110
BIT_OR() = 111 = 7

9. BIT_XOR Bitweise XOR-Operation (Nicht-Null-Wert)

Die MySQL-Funktion BIT_XOR() ist eine Aggregatfunktion, die eine „bitweise exklusive ODER“-Operation für alle Eingabewerte ungleich Null ausführt. (Nur Werte ungleich Null werden verarbeitet.)
Bitweises XOR verarbeitet zwei Binärzahlen gleicher Länge. Solange die beiden entsprechenden Binärbits unterschiedlich sind, ist der Ergebniswert des Bits gleich 1, sonst ist es 0.

语法:

BIT_XOR(expr)

SELECT BIT_XOR(expr), ...
FROM table_name
[WHERE ...];

SELECT BIT_XOR(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen Wert vom Typ Ganzzahl oder Bit.

返回值

  • Der Rückgabewert ist vom gleichen Typ wie die Eingabeparameter und gibt das Ergebnis der Durchführung einer „bitweisen XOR“-Operation für alle Eingabewerte ungleich Null zurück.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT BIT_XOR(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x ) t;
+------------+
| BIT_XOR(x) |
+------------+
|          7 |
+------------+

Bei der Operation „Bitweises XOR“ sind die Operationsschritte wie folgt:

4 -> 100
5 -> 101
6 -> 110
BIT_XOR() = 111 = 7

10. JSON_ARRAYAGG wird in einem JSON-Array aggregiert

MySQL JSON_ARRAYAGG() Die Funktion aggregiert die Werte der angegebenen Spalte oder des angegebenen Ausdrucks in einem JSON-Array.

语法:

JSON_ARRAYAGG(expr)

SELECT JSON_ARRAYAGG(expr), ...
FROM table_name
[WHERE ...]
[GROUP BY group_expr1, group_expr2, ...];

参数说明

  • expr:notwendig. Es kann ein Spaltenname oder ein Ausdruck sein.

返回值

  • Alle übereinstimmenden Werte werden aggregiert.
  • Rückgabe NULL情况:Die Ergebnismenge enthält keine Zeilen.

Beispiel:

mysql> select * from student_score;
+----+------+---------+-------+
| id | name | subject | score |
+----+------+---------+-------+
|  1 | Tom  | Math    |    80 |
|  2 | Tom  | English |    90 |
|  3 | Tim  | English |    98 |
+----+------+---------+-------+
3 rows in set (0.00 sec)

mysql> SELECT name AS `Name`, JSON_ARRAYAGG(subject) AS `Subjects` FROM student_score GROUP BY name;
+------+---------------------+
| Name | Subjects            |
+------+---------------------+
| Tim  | ["English"]         |
| Tom  | ["Math", "English"] |
+------+---------------------+

11. JSON_OBJECTAGG wird zu einem JSON-Objekt aggregiert

Die Funktion MySQL JSON_OBJECTAGG() aggregiert die Schlüssel-Wert-Paare mit dem ersten Parameter als Schlüssel und dem zweiten Parameter als Wert in einem JSON-Objekt.

语法:

JSON_OBJECTAGG(key_expr, value_expr)

SELECT JSON_OBJECTAGG(key_expr, value_expr), ...
FROM table_name
[WHERE ...]
[GROUP BY group_expr1, group_expr2, ...];

参数说明

  • key_expr:notwendig. Sein Wert dient als Schlüssel im Schlüssel-Wert-Paar im Ergebnisobjekt. Es kann ein Spaltenname oder ein Ausdruck sein.

  • value_expr: Optional. Sein Wert wird als Wert im Schlüssel-Wert-Paar im Ergebnisobjekt verwendet. Es kann ein Spaltenname oder ein Ausdruck sein.

返回值

  • ist ein JSON-Objekt, in dem der Schlüssel des Schlüssel-Wert-Paares der Wert von key_expr und der Wert der Wert von value_expr ist.
  • Rückgabe NULL情况:Die Ergebnismenge enthält keine Zeilen.
  • Hinweis: Wenn doppelte Schlüssel vorhanden sind, wird nur der letzte Schlüssel als Schlüssel-Wert-Paar beibehalten und andere doppelte Schlüssel-Wert-Paare werden verworfen.

Beispiel:

mysql> select * from student_score;
+----+------+---------+-------+
| id | name | subject | score |
+----+------+---------+-------+
|  1 | Tom  | Math    |    80 |
|  2 | Tom  | English |    90 |
|  3 | Tim  | English |    98 |
+----+------+---------+-------+
3 rows in set (0.00 sec)
 
mysql> SELECT name AS `Name`, JSON_OBJECTAGG(subject, score) AS `Scores`FROM student_score GROUP BY name;
+------+-----------------------------+
| Name | Scores                      |
+------+-----------------------------+
| Tim  | {"English": 98}             |
| Tom  | {"Math": 80, "English": 90} |
+------+-----------------------------+

12. STD ermittelt die Gesamtstandardabweichung (ungleich Null)

Die Funktion MySQL STD() berechnet die Populationsstandardabweichung aller Eingabewerte ungleich Null und gibt das Ergebnis zurück. Es ist ein Alias ​​für STDDEV_POP() .

Es werden nur Werte verarbeitet, die nicht null sind, Nullwerte werden ignoriert.

语法:

STD(expr)

参数说明

  • expr:Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Bevölkerungsstandardabweichung.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT STD(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+-------------------+
| STD(x)            |
+-------------------+
| 0.816496580927726 |
+-------------------+

13. STDDEV ermittelt die Gesamtstandardabweichung (ungleich Null)

Die MySQL-Funktion STDDEV() berechnet die Populationsstandardabweichung aller Eingabewerte ungleich Null und gibt das Ergebnis zurück. Es ist ein Alias ​​für STDDEV_POP().

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden ignoriert.

语法:

STDDEV(expr)

SELECT AVG(expr), ...
FROM table_name
[WHERE ...];

SELECT AVG(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Die Populationsstandardabweichung aller Eingabewerte ungleich Null.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT STDDEV(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+-------------------+
| STDDEV(x)         |
+-------------------+
| 0.816496580927726 |
+-------------------+

14. STDDEV_POP Ermitteln Sie die Gesamtstandardabweichung (ungleich Null).

Die Funktion MySQL STDDEV_POP() berechnet die Populationsstandardabweichung aller Eingabewerte ungleich Null und gibt das Ergebnis zurück.

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden von der Funktion ignoriert.

语法:

STDDEV_POP(expr)

SELECT STDDEV_POP(expr), ...
FROM table_name
[WHERE ...];

SELECT STDDEV_POP(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Die Populationsstandardabweichung aller Eingabewerte ungleich Null.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT STDDEV_POP(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+-------------------+
| STDDEV_POP(x)     |
+-------------------+
| 0.816496580927726 |
+-------------------+

15. STDDEV_SAMP berechnet die Stichprobenstandardabweichung (ungleich Null).

Die Funktion MySQL STDDEV_SAMP() berechnet die Stichprobenstandardabweichung aller Eingabewerte ungleich Null und gibt das Ergebnis zurück.

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden von der Funktion ignoriert.

语法:

STDDEV_SAMP(expr)

SELECT STDDEV_SAMP(expr), ...
FROM table_name
[WHERE ...];

SELECT STDDEV_SAMP(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Die Stichprobenstandardabweichung aller Eingabewerte ungleich Null.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT STDDEV_SAMP(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+----------------+
| STDDEV_SAMP(x) |
+----------------+
|              1 |
+----------------+

16. VAR_POP berechnet die Populationsvarianz (ungleich Null)

Die Funktion MySQL VAR_POP() berechnet die Populationsvarianz (das Quadrat der Populationsstandardabweichung) für alle Eingabewerte ungleich Null und gibt das Ergebnis zurück.

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden von der Funktion ignoriert.

语法:

VAR_POP(expr)

SELECT VAR_POP(expr), ...
FROM table_name
[WHERE ...];

SELECT VAR_POP(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Die Populationsvarianz (das Quadrat der Populationsstandardabweichung) für alle Eingabewerte ungleich Null.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

17. VARIANCE berechnet die Gesamtvarianz (ungleich Null)

Die Funktion MySQL VAR_SAMP() berechnet die Stichprobenvarianz (das Quadrat der Stichprobenstandardabweichung) für alle Eingabewerte ungleich Null und gibt das Ergebnis zurück.

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden von der Funktion ignoriert.

语法:

VAR_SAMP(expr)

SELECT VAR_SAMP(expr), ...
FROM table_name
[WHERE ...];

SELECT VAR_SAMP(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Die Stichprobenvarianz (das Quadrat der Stichprobenstandardabweichung) für alle Eingabewerte ungleich Null.
  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT VAR_SAMP(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+-------------+
| VAR_SAMP(x) |
+-------------+
|           1 |
+-------------+

18. VAR_SAMP berechnet die Stichprobenvarianz (ungleich Null).

Die MySQL-Funktion VARIANCE() berechnet die Populationsvarianz (das Quadrat der Populationsstandardabweichung) für alle Eingabewerte ungleich Null und gibt das Ergebnis zurück. Es ist ein Alias ​​für VAR_POP().

Es werden nur Nicht-Null-Werte verarbeitet, Nullwerte werden von der Funktion ignoriert.

语法:

VARIANCE(expr)

SELECT VARIANCE(expr), ...
FROM table_name
[WHERE ...];

SELECT VARIANCE(expr), group_expr1, group_expr2, ...
FROM table_name
[WHERE ...]
GROUP BY group_expr1, group_expr2, ...;

参数说明

  • expr: Erforderlich. Ein Spaltenname oder Ausdruck. Es akzeptiert einen numerischen oder binären Wert.

返回值

  • Gibt die Populationsvarianz (das Quadrat der Populationsstandardabweichung) für alle Eingabewerte ungleich Null zurück.

  • Rückgabe NULL情况:Alle Eingabewerte sind null.

Beispiel:

mysql> SELECT VARIANCE(x) FROM ( SELECT 4 x UNION SELECT 5 x UNION SELECT 6 x) t;
+--------------------+
| VARIANCE(x)        |
+--------------------+
| 0.6666666666666666 |
+--------------------+

Guess you like

Origin blog.csdn.net/imwucx/article/details/134231729