Aggregate Functions
SQL defines aggregate functions to simplify server-side aggregate calculations on data. Except for the COUNT(*)
function, all aggregate functions perform a Null-elimination step, so that Null values are not included in the final result of the calculation.
Note that the elimination of Null values is not equivalent to replacing those values with zero. For example, in the following table, AVG(i)
(the average of the values of i
) will give a different result from that of AVG(j)
:
i | j |
---|---|
150 | 150 |
200 | 200 |
250 | 250 |
NULL | 0 |
Here AVG(i)
is 200 (the average of 150, 200, and 250), while AVG(j)
is 150 (the average of 150, 200, 250, and 0). A well-known side effect of this is that in SQL AVG(z)
is not equivalent with SUM(z)/COUNT(*)
.
Read more about this topic: Null (SQL)
Famous quotes containing the words aggregate and/or functions:
“a fortress against ideas and against the
Shuddering insidious shock of the theory-vendors
The little sardine men crammed in a monster toy
Who tilt their aggregate beast against our crumbling Troy.”
—Louis MacNeice (19071963)
“If photography is allowed to stand in for art in some of its functions it will soon supplant or corrupt it completely thanks to the natural support it will find in the stupidity of the multitude. It must return to its real task, which is to be the servant of the sciences and the arts, but the very humble servant, like printing and shorthand which have neither created nor supplanted literature.”
—Charles Baudelaire (18211867)