Specify a value computed from a group of rows.
Syntax
| |
COUNT ( * ) |
<set function type> ( [ DISTINCT | ALL ] <value expression> ) |
| | | | | | | |
AVG MAX MIN SUM COUNT MED STD LIST |
Usage
The aggregate functions, also referred to as set functions, perform operations that aggregate data from groups of rows.
Notes
♦ | ALL is implicit if no set quantifier is not specified. |
♦ | If DISTINCT is specified, then all duplicate values are removed from the set. |
♦ | If the query specifies a GROUP BY clause, then the aggregate functions are applied to each group, else the entire table is treated as a single group. |
♦ | If a general set function is specified, other than the COUNT function, and the set is empty, then the result is null. |
♦ | If COUNT( * ) is specified, then the result is the cardinality of the set, else the COUNT function returns the number of non-null values in the set. |
♦ | The data type of the result is BIGINT. |
♦ | The MAX function returns the highest non-null value in the set. |
♦ | The data type of the result is the same type as the argument. |
♦ | The MIN function returns the lowest non-null value in the set. |
♦ | The data type of the result is the same type as the argument. |
♦ | The AVG function calculates the average of non-null values in the set. |
♦ | The argument shall be a numeric type. |
♦ | The data type of the result is the same type as the argument. |
♦ | The SUM function calculates the sum of non-null values in the set. |
♦ | The argument shall be a numeric type. |
♦ | If the argument is an integer type, then the data type of the result is BIGINT. |
♦ | If the argument is a BCD type, then the data type of the result is DECIMAL with maximum possible precision and the same scale as the argument. |
♦ | If the argument is an approximate numeric type, then the data type of the result is DOUBLE PRECISION or EXTENDED. |
♦ | The MED function calculates the median value of the non-null values in the set. |
♦ | The argument shall be a numeric type. |
♦ | The data type of the result is the same type as the argument. |
♦ | The STD function calculates the standard deviation of the non-null values in the set. |
♦ | The argument shall be a numeric type. |
♦ | The data type of the result is the same type as the argument. |
♦ | LIST is a special NexusDB set function that compiles a comma-separated list of non-null values in the set. |
♦ | The argument shall be a character string type. |
♦ | The data type of the result is CHAR(4096). |
♦ | If DISTINCT is specified, then all duplicate values are removed from the set. |
♦ | If DISTINCT is specified, then the items in the list are sorted otherwise unsorted. |
Examples
1) | The following example calculates the number of rows in the students table: |
SELECT COUNT( * ) FROM students
2) | The following example returns the number of female students: |
SELECT COUNT( studentName )
FROM students
WHERE gender = 'F'
3) | The following example calculates the average grade for each student: |
SELECT studentID, AVG( grade )
FROM enrolls
GROUP BY studentID
4) | The following example selects the highest and lowest salaries of teachers: |
SELECT MAX( salary ), MIN( salary )
FROM teachers
5) | The following example calculates the total cost of each order made: |
SELECT orderID, SUM( extPrice )
FROM order_details
GROUP BY orderID
6) | The following example retrieves a list of student names grouped by gender: |
SELECT gender, LIST( studentName )
FROM students
GROUP BY gender
Conformance
SQL:2003 standard NexusDB extensions |
- - - - |
Core SQL MED function STD function LIST function |