Avg Window Function; Examples Of Avg Window Function - HP Neoview SQL Reference Manual

Hide thumbs Also See for Neoview SQL:
Table of Contents

Advertisement

AVG Window Function

AVG is a window function that returns the average of nonnull values of the given expression
for the current window specified by the inline-window specification.
AVG ([ALL] expression) OVER (inline-window-specification)
inline-window-specification is:
[PARTITION BY expression [, expression]...]
[ORDER BY expression [ASC[ENDING] | DESC[ENDING]]
[ window-frame-clause ]
window-frame-clause is:
ROWS CURRENT ROW
| ROWS preceding-row
| ROWS BETWEEN preceding-row AND preceding-row
| ROWS BETWEEN preceding-row AND CURRENT ROW
| ROWS BETWEEN preceding-row AND following-row
| ROWS BETWEEN CURRENT ROW AND CURRENT ROW
| ROWS BETWEEN CURRENT ROW AND following-row
| ROWS BETWEEN following-row AND following-row
preceding-row is:
UNBOUNDED PRECEDING
| unsigned-integer PRECEDING
following-row is:
UNBOUNDED FOLLOWING
| unsigned-integer FOLLOWING
ALL
specifies whether duplicate values are included in the computation of the AVG of the
expression. The default option is ALL, which causes duplicate values to be included.
expression
specifies a numeric or interval value expression that determines the values to average.
See
"Numeric Value Expressions" (page 265)
inline-window-specification
specifies the window over which the AVG is computed. The
inline-window-specification can contain an optional PARTITION BY clause, an
optional ORDER BY clause and an optional window frame clause. The PARTITION BY clause
specifies how the intermediate result is partitioned and the ORDER BY clause specifies how
the rows are ordered within each partition.
window-frame-clause
specifies the window within the partition over which the AVG is computed.

Examples of AVG Window Function

Return the running average value of the SALARY column:
SELECT empnum, AVG(salary)
FROM persnl.employee;
Return the running average value of the SALARY column within each department:
SELECT deptnum, empnum, AVG(salary)
OVER (PARTITION BY deptnum ORDER BY empnum ROWS UNBOUNDED PRECEDING)
FROM persnl.employee;
Return the moving average of salary within each department over a window of the last 4
rows:
[,expression [ASC[ENDING] | DESC[ENDING]]]...]
OVER (ORDER BY empnum ROWS UNBOUNDED PRECEDING)
and
"Interval Value Expressions" (page
261).
AVG Window Function
493

Advertisement

Table of Contents
loading

Table of Contents