Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Français) » SQL Anywhere Server - SQL Reference » Using SQL » SQL functions » SQL functions (P-Z)


REGR_SLOPE function [Aggregate]

Computes the slope of the linear regression line fitted to non-NULL pairs.

Syntax 1
REGR_SLOPE( dependent-expression , independent-expression )
Syntax 2
REGR_SLOPE( dependent-expression , independent-expression ) 
OVER ( window-spec )
window-spec : see Syntax 2 instructions in the Remarks section below
  • dependent-expression   The variable that is affected by the independent variable.

  • independent-expression   The variable that influences the outcome.




This function converts its arguments to DOUBLE, and performs the computation in double-precision floating point. If the function is applied to an empty set, then it returns NULL.

The function is applied to the set of (dependent-expression and independent-expression) pairs after eliminating all pairs for which either dependent-expression or independent-expression is NULL. The function is computed simultaneously during a single pass through the data. After eliminating NULL values, the following computation is then made, where y represents the dependent-expression and x represents the independent-expression:

COVAR_POP( y, x ) / VAR_POP( x )

For more information about the statistical computation performed, see Mathematical formulas for the aggregate functions.

Syntax 2 represents usage as a window function in a SELECT statement. As such, elements of window-spec can be specified either in the function syntax (inline), or in conjunction with a WINDOW clause in the SELECT statement. See the window-spec definition provided in WINDOW clause.

For more information about using window functions in SELECT statements, including working examples, see Window functions.

See also
Standards and compatibility
  • SQL/2003   SQL foundation feature (T621) outside core SQL.


The following example returns the value 935.3429749445614.

SELECT REGR_SLOPE( Salary, ( YEAR( NOW() ) - YEAR( BirthDate ) ) )
FROM Employees;