Dear Gurus ,
Need your guidance , Count(*) fails while using "offset" (12C) ,I understand we give no of rows when using offset (eg: offset 0 rows fetch next 5 rows(here count is 5 but shows null )) but when using fetch first I get total record count (eg:fetch first 5 rows only (I get total record count in that table)),
EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO |
7839 | KING | PRESIDENT | | 17-NOV-1981 | 5000 | | 10 |
7698 | BLAKE | MANAGER | 7839 | 01-MAY-1981 | 2850 | | 30 |
7782 | CLARK | MANAGER | 7839 | 09-JUN-1981 | 2450 | | 10 |
7566 | JONES | MANAGER | 7839 | 02-APR-1981 | 2975 | | 20 |
7788 | SCOTT | ANALYST | 7566 | 09-DEC-1982 | 3000 | | 20 |
7902 | FORD | ANALYST | 7566 | 03-DEC-1981 | 3000 | | 20 |
7369 | SMITH | CLERK | 7902 | 17-DEC-1980 | 800 | | 20 |
7499 | ALLEN | SALESMAN | 7698 | 20-FEB-1981 | 1600 | 300 | 30 |
7521 | WARD | SALESMAN | 7698 | 22-FEB-1981 | 1250 | 500 | 30 |
7654 | MARTIN | SALESMAN | 7698 | 28-SEP-1981 | 1250 | 1400 | 30 |
7844 | TURNER | SALESMAN | 7698 | 08-SEP-1981 | 1500 | 0 | 30 |
7876 | ADAMS | CLERK | 7788 | 12-JAN-1983 | 1100 | | 20 |
7900 | JAMES | CLERK | 7698 | 03-DEC-1981 | 950 | | 30 |
7934 | MILLER | CLERK | 7782 | 23-JAN-1982 | 1300 | | 10 |
here are the results , kindly correct me if its wrong.
Select Count(*)From Emp
/
COUNT(*)
----------
14
Select * From Emp Fetch First 5 Rows Only
/
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7839 KING PRESIDENT 17-NOV-1981 5000 10
7698 BLAKE MANAGER 7839 01-MAY-1981 2850 30
7782 CLARK MANAGER 7839 09-JUN-1981 2450 10
7566 JONES MANAGER 7839 02-APR-1981 2975 20
7788 SCOTT ANALYST 7566 09-DEC-1982 3000 20
Select Count(*),Count(1),Sum(1) From Emp Fetch First 5 Rows Only
/
COUNT(*) COUNT(1) SUM(1)
---------- ---------- ----------
14 14 14
Select * From Emp Offset 5 Rows Fetch Next 5 Rows Only
/
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7902 FORD ANALYST 7566 03-DEC-1981 3000 20
7369 SMITH CLERK 7902 17-DEC-1980 800 20
7499 ALLEN SALESMAN 7698 20-FEB-1981 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-1981 1250 500 30
7654 MARTIN SALESMAN 7698 28-SEP-1981 1250 1400 30
Select count(*), Count(1),Sum(1) From Emp A Offset 1 Rows Fetch Next 5 Rows Only
/
no rows selected
regards,
friend