18.0400 | 20.1693 | 325.4400 | +----------+---------------+----------------+------------+ As a window function: CREATE OR REPLACE TABLE student_test (name CHAR(10), test CHAR(10), score TINYINT); INSERT INTO student_test VALUES ('Chun', 'SQL', 75), ('Chun', 'Tuning', 73), ('Esben', 'SQL', 43), ('Esben', 'Tuning', 31), ('Kaolin', 'SQL', 56), ('Kaolin', 'Tuning', 88), ('Tatiana', 'SQL', 87); SELECT name, test, score, VAR_POP(score) OVER (PARTITION BY test) AS variance_results FROM student_test; +---------+--------+-------+------------------+ | name | test | score | variance_results | +---------+--------+-------+------------------+ | Chun | SQL | 75 | 287.1875 | | Esben | SQL | 43 | 287.1875 | | Kaolin | SQL | 56 | 287.1875 | | Tatiana | SQL | 87 | 287.1875 | | Chun | Tuning | 73 | 582.0000 | | Esben | Tuning | 31 | 582.0000 | | Kaolin | Tuning | 88 | 582.0000 | +---------+--------+-------+------------------+ URL: https://mariadb.com/kb/en/var_pop/https://mariadb.com/kb/en/var_pop/