How the STD() function works in Mariadb?

The STD() function in MariaDB is a statistical function that calculates the standard deviation of a set of values.

Posted on

The STD() function in MariaDB is a statistical function that calculates the standard deviation of a set of values. The standard deviation is a measure of how much the values in a data set vary from the average (mean) value.

Syntax

The syntax for the MariaDB STD() function is as follows:

STD(expression)

The STD() function takes one argument, expression, which can be a column name, formula, or numeric value. It returns the standard deviation of the values as a double-precision value.

Examples

Example 1: Standard Deviation of Column Values

In this example, we calculate the standard deviation of values in a column.

DROP TABLE IF EXISTS test_scores;
CREATE TABLE test_scores (score INT);
INSERT INTO test_scores VALUES (88), (75), (96), (69), (85);

SELECT STD(score) FROM test_scores;

The output for this statement is:

+------------+
| STD(score) |
+------------+
|     9.5624 |
+------------+

This shows the standard deviation of the test scores.

Example 2: Standard Deviation with a Condition

This example demonstrates calculating the standard deviation with a WHERE clause.

SELECT STD(score) FROM test_scores WHERE score > 70;

The output for this statement is:

+------------+
| STD(score) |
+------------+
|     7.5166 |
+------------+

The standard deviation is calculated for scores greater than 70.

Example 3: Grouped Standard Deviation

Here, we calculate the standard deviation for different groups.

DROP TABLE IF EXISTS student_scores;
CREATE TABLE student_scores (student_id INT, score INT);
INSERT INTO student_scores VALUES (1, 88), (1, 92), (2, 75), (2, 85);

SELECT student_id, STD(score) FROM student_scores GROUP BY student_id;

The output for this statement is:

+------------+------------+
| student_id | STD(score) |
+------------+------------+
|          1 |     2.0000 |
|          2 |     5.0000 |
+------------+------------+

This shows the standard deviation of scores for each student.

Example 4: Standard Deviation of an Empty Set

This example shows what happens when STD() is used on an empty set.

SELECT STD(score) FROM test_scores WHERE score > 100;

The output for this statement is:

NULL

The standard deviation of an empty set is NULL.

Below are a few functions related to the MariaDB STD() function:

  • MariaDB AVG() function is used to calculate the average value of a set of values.
  • MariaDB VARIANCE() function calculates the variance of a set of values, which is the square of the standard deviation.

Conclusion

The STD() function is a valuable tool for statistical analysis in MariaDB, providing insights into the variability of data. It is important to understand the data set and the context in which the standard deviation is being calculated, as it can significantly affect the interpretation of the results. When used appropriately, STD() can help identify trends and anomalies in data, aiding in data-driven decision-making.