w3resource

MySQL STDDEV() function

STDDEV() function

MySQL STDDEV() function returns the population standard deviation of expression.

The STDDEV() function is used to calculate statistical information for a specified numeric field in a query. It returns NULL if no matching rows found.

This function is useful in -

  • It's used when you have a sample of data and want to estimate the variability in the entire population.
  • STDDEV() quantifies the spread or dispersion of values around the mean (average) in a sample.
  • When analyzing sample data, STDDEV() helps you assess the distribution of values and identify potential outliers or anomalies within the sample.
  • When comparing different samples or groups, STDDEV() is used to assess the significance of differences between the groups.
  • In some quality control processes, sample standard deviation helps assess the variability in products or processes.
  • Sample standard deviation is used to calculate confidence intervals for population parameters based on sample data.

Syntax:

STDDEV(expr);

Where expr is an expression.

MySQL Version: 8.0

Example: MySQL STDDEV() function

The following MySQL statement returns the standard deviation of 'total_cost' from purchase table.

Sample table: purchase

+------------+------------+----------------+------------+------------+---------+---------------------------------+----------+---------+-------------+-------------+------------+
| invoice_no | invoice_dt | ord_no         | ord_date   | receive_dt | book_id | book_name                       | pub_lang | cate_id | receive_qty | purch_price | total_cost |
+------------+------------+----------------+------------+------------+---------+---------------------------------+----------+---------+-------------+-------------+------------+
| INV0001    | 2008-07-15 | ORD/08-09/0001 | 2008-07-06 | 2008-07-19 | BK001   | Introduction to Electrodynamics | English  | CA001   |          15 |       75.00 |    1125.00 |
| INV0002    | 2008-08-25 | ORD/08-09/0002 | 2008-08-09 | 2008-08-28 | BK004   | Transfer  of Heat and Mass      | English  | CA002   |           8 |       55.00 |     440.00 |
| INV0003    | 2008-09-20 | ORD/08-09/0003 | 2008-09-15 | 2008-09-23 | BK005   | Conceptual Physics              | NULL     | CA001   |          20 |       20.00 |     400.00 |
| INV0004    | 2007-08-30 | ORD/07-08/0005 | 2007-08-22 | 2007-08-30 | BK004   | Transfer  of Heat and Mass      | English  | CA002   |          15 |       35.00 |     525.00 |
| INV0005    | 2007-07-28 | ORD/07-08/0004 | 2007-06-25 | 2007-07-30 | BK001   | Introduction to Electrodynamics | English  | CA001   |           8 |       25.00 |     200.00 |
| INV0006    | 2007-09-24 | ORD/07-08/0007 | 2007-09-20 | 2007-09-30 | BK003   | Guide to Networking             | Hindi    | CA003   |          20 |       45.00 |     900.00 |
+------------+------------+----------------+------------+------------+---------+---------------------------------+----------+---------+-------------+-------------+------------+

Code:


-- This query calculates the standard deviation of the 'total_cost' column in the 'purchase' table.
SELECT STDDEV(total_cost)             
-- This statement selects the standard deviation of the 'total_cost' column.
FROM purchase;
-- This part of the query specifies the table from which data is being retrieved, which is 'purchase'.

Explanation:

  • The purpose of this SQL query is to compute the standard deviation of the 'total_cost' values in the 'purchase' table.

  • SELECT STDDEV(total_cost): This part of the query selects the standard deviation of the 'total_cost' column. Standard deviation is a statistical measure of the amount of variation or dispersion in a set of values.

  • FROM purchase: This part specifies the table from which the data is being selected, which is the 'purchase' table.

  • The query will return a single value, which is the standard deviation of the 'total_cost' values in the 'purchase' table. This value provides insight into the spread or dispersion of the 'total_cost' values in the dataset.

Output:

mysql> SELECT STDDEV(total_cost)             
    -> FROM purchase;
+--------------------+
| STDDEV(total_cost) |
+--------------------+
|         315.392172 | 
+--------------------+
1 row in set (0.00 sec)

PREV : STDDEV_SAMP()
NEXT : MySQL Aggregate Functions and Grouping - SUM()



Follow us on Facebook and Twitter for latest update.