aggregate_name (expression)
+ aggregate_name (ALL expression)
aggregate_name (DISTINCT expression)
aggregate_name ( * )
The first form of aggregate expression invokes the aggregate across all
input rows for which the given expression yields a non-null value.
- The second form invokes the aggregate for all distinct non-null values
+ The second form is the same as the first, since ALL is the default.
+ The third form invokes the aggregate for all distinct non-null values
of the expression found in the input rows. The last form invokes the
aggregate once for each input row regardless of null or non-null values;
since no particular input value is specified, it is generally only useful