Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Zapytanie SQL do zwrócenia N wierszy z podwójnego

Możesz użyć:

 WHERE ROWNUM <= :NUM

...ale tabela musi zawierać wiersz równy lub większy od limitu w zmiennej bind. Ten link przedstawia różne techniki generowania numerów wierszy w Oracle .

Korzystanie z CONNECT BY , Oracle 10g+:

SELECT LEVEL
  FROM DUAL
CONNECT BY LEVEL <= :NUM

Potwierdzone przez monojohnny że można użyć zmiennej bind. Próbuje uruchomić na Oracle 9i, chociaż CONNECT BY obsługiwana składnia powoduje błąd ORA-01436.

Jedyną rzeczą, na którą nie jestem w 100%, jest to, czy CONNECT BY zaakceptuje limit ze zmiennej bind.

Odniesienie:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego nazwy tabel/kolumn/indeksów Oracle są ograniczone do 30 znaków?

  2. jak zdobyć PL/SQL w SQLFiddle?

  3. Jak rozpoznać, czy wartość nie jest liczbowa w Oracle?

  4. Unia powodująca ORA-01790:wyrażenie musi mieć ten sam typ danych, co odpowiadające mu wyrażenie

  5. Kodowanie i dekodowanie Base64 w Oracle