Determines the arithmetic mean of values for all records
specified by a record selection expression.
1 – Examples
The following programs demonstrate the use of the AVERAGE
function in a display statement. These programs:
o Use a record selection expression to form a record stream from
the view CURRENT_INFO, consisting of the records for which the
value in the SALARY field is greater than 50000.00
o Calculate the average salary for these selected records
o Print this average
1.1 – C Example
#include <stdio.h>
DATABASE PERS = FILENAME "PERSONNEL";
double mean;
main()
{
READY PERS;
START_TRANSACTION READ_ONLY;
GET
mean = AVERAGE CI.SALARY OF CI IN CURRENT_INFO
WITH CI.SALARY > 50000.00;
END_GET;
COMMIT;
printf ("Average is: %f\n",mean);
FINISH;
}
1.2 – Pascal Example
program average_function (input,output);
DATABASE PERS = FILENAME 'PERSONNEL';
var
mean : double;
begin
READY PERS;
START_TRANSACTION READ_ONLY;
GET
mean = AVERAGE SH.SALARY_AMOUNT OF SH IN SALARY_HISTORY
WITH SH.SALARY_AMOUNT > 50000.00;
END_GET;
COMMIT;
writeln ('Average is: ', mean:10:2);
FINISH;
end.
2 – Format
(B)0[m
qq> [4mAVERAGE[m qqqqwqqqqqqqqqqqqqqqqqqqqqwqqqqqqqqqqqqqqqqqqqqqqqqqqk
mqq> handle-options qqj x
x
lqqqqqqqqqqqqqqqqqqqqqqqqqqq<qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
x
mqqqqqqqqqqqq value-expr qqqqqqq> [4mOF[m qqqqqqqqq> rse qqqqqqqqqqq>
(B)0[mhandle-options =
q> ( qwqqqqqq> [4mREQUEST_HANDLE[m qqqqq> var qqqqqqqqwq> ) q>
tqqqqqq> [4mTRANSACTION_HANDLE[m qqq> var qqqqqqqqu
mqqqqqq> [4mREQUEST_HANDLE[m q> var q> , qqqqqqqk x
lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj x
mqqqq> [4mTRANSACTION_HANDLE[m q> var qqqqqqqqqqqj
2.1 – Format arguments
value-expr A value expression. A symbol or a string
of symbols used to calculate a value. When
you use a value expression in a statement,
Oracle Rdb calculates the value associated
with the expression and uses that value
when executing the statement.
rse A record selection expression. A phrase
that defines specific conditions that
individual records must meet before
Oracle Rdb includes them in a record stream.
handle-options A request handle, a transaction handle, or
both.
REQUEST_HANDLE var The REQUEST_HANDLE keyword followed by a
host language variable. A request handle
identifies a compiled Oracle Rdb request.
If you do not supply a request handle
explicitly, RDML associates a unique
request handle for the compiled request.
TRANSACTION_HANDLE The TRANSACTION_HANDLE keyword followed by
var a host language variable. A transaction
handle identifies a transaction. If
you do not supply a transaction handle
explicitly, RDML uses the default
transaction handle.