Oracle
 sql >> база данни >  >> RDS >> Oracle

Simple Select с клауза за извличане на where и offset не работи в oracle

OFFSET 1 ROWS FETCH NEXT 10 ROWS ONLY се предлага от Oracle 12c.

Вместо това трябва да извършите заявката си и да подредите данните; след това генерирайте номер на ред за подредените редове; и накрая филтрирайте тези номера на редове. Тези стъпки трябва да се извършват в правилния ред във вложени подзаявки:

SELECT *
FROM   (
  SELECT t.*,
         ROWNUM AS rn
  FROM   (
    SELECT up.NAME AS upozilaName_bn,
           up.id AS upozila,
           dis.NAME AS districtName_bn,
           dis.id AS district,
           dv.NAME AS divisionName_bn,
           dv.id AS division,
           w.COUNTER_TYPE,
           w.COUNTER_ID,
           w.STATUS
    FROM X w
    left join  Y up ON w.UPOZILA = up.ID
    left JOIN  Z dis ON w.DISTRICT = dis.id
    left join  P dv ON w.DIVISION = dv.ID
    order by upozilaName_bn asc
  ) T
)
WHERE  rn BETWEEN 2 AND 11;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle instant client с gem ruby-oci8 не може да се свърже с DB в rails c

  2. Как се пише клауза "Поръчай по" преди клауза "Къде".

  3. java.sql.SQLException:Изчерпан набор от резултати

  4. Работа с дати в Oracle SQL

  5. спиране на грешка при компилация в sqlplus скрипт