Oracle SQL - Function CORR function

Introduction

CORR function calculates the correlation coefficient of a set of paired observations.

The CORR function returns a number between -1 and 1.

The general format for this function is:

CORR(expr1, expr2) 

Given the following table.

Demo

SQL>
SQL> drop table my_table;

Table dropped.-- from w w  w. j  a  va  2s. com

SQL> create table my_table(
  2  x      NUMBER(4)  primary key,
  3  y      NUMBER(4)  not null);
SQL>
SQL> insert into my_table values(1,2);
SQL> insert into my_table values(2,4);
SQL> insert into my_table values(3,6);
SQL> insert into my_table values(4,9);
SQL> insert into my_table values(5,13);
SQL> insert into my_table values(6,16);
SQL> insert into my_table values(7,20);
SQL> insert into my_table values(8,27);
SQL> insert into my_table values(9,32);
SQL> insert into my_table values(10,47);
SQL> insert into my_table values(11,53);
SQL> insert into my_table values(12,60);
SQL> insert into my_table values(13,76);
SQL> insert into my_table values(14,100);
SQL> insert into my_table values(15,130);
SQL> insert into my_table values(16,189);
SQL> insert into my_table values(17,300);
SQL> insert into my_table values(18,789);
SQL> insert into my_table values(19,1000);
SQL>

Demo

SQL>
SQL>-- from   w  w  w .j av a2 s . c om
SQL> SELECT CORR(y, x) FROM my_table;

CORR(Y,X)
---------
 00000.70

SQL>