Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana cara memilih 200 catatan untuk setiap iterasi 'untuk loop' di Oracle?

Seperti yang disebutkan dalam komentar saya, Anda dapat menggunakan BULK kumpulkan dan LIMIT pilihan untuk mencapai kebutuhan Anda. Lihat di bawah demo. Di sini, setiap kali loop akan berjalan dan pilih 200 catatan.

DECLARE
   CURSOR rec
   IS
          SELECT LEVEL
            FROM DUAL
      CONNECT BY LEVEL < 401;

   TYPE v_var IS TABLE OF NUMBER
      INDEX BY PLS_INTEGER;

   var   v_var;
BEGIN
   OPEN rec;

   LOOP
      FETCH rec BULK COLLECT INTO var LIMIT 200;

      EXIT WHEN (var.count = 0);

      FOR i IN 1 .. var.COUNT
      LOOP
         DBMS_OUTPUT.put_line (var (i));
      END LOOP;
   END LOOP;

   CLOSE rec;
END;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL untuk memeriksa semua nilai di kolom

  2. java.sql.SQLException:Pendengar menolak koneksi dengan kesalahan berikut:ORA-12519, TNS:tidak ditemukan penangan layanan yang sesuai

  3. ORA-00937:Bukan fungsi grup grup tunggal - Kesalahan kueri

  4. Menemukan Kesenjangan Urutan dalam Tabel di Oracle

  5. Bagaimana cara mengembalikan beberapa baris dengan fungsi tersimpan pl/sql?