Oracle
 sql >> Database >  >> RDS >> Oracle

Raggruppa per vs Partiziona per in Oracle

Non sono la stessa cosa.

Questo restituirà 3 righe:

select deptno, count(*) c from emp group by deptno;

DEPTNO C
------ -
10     3
20     5
30     6

Questo restituirà 14:

select deptno, count(*) over (partition by deptno) c from emp;


DEPTNO C
------ -
10     3
10     3
10     3
20     5
20     5
20     5
20     5
20     5
30     6
30     6
30     6
30     6
30     6
30     6