Sudah tentu! Berikut ialah contoh mudah untuk menunjukkan penggunaan BULK COLLECT dalam PL/SQL.
Apakah Kutipan Pukal?
BULK COLLECT ialah kaedah yang digunakan untuk mengambil berbilang baris daripada pertanyaan SQL ke dalam koleksi PL/SQL dalam satu operasi. Ini mengurangkan suis konteks antara enjin SQL dan PL/SQL, menjadikan proses lebih cekap, terutamanya untuk set data yang besar.
Contoh Mudah Kutipan Pukal
Dalam contoh ini, kami akan membuat jadual, menyisipkan beberapa data ke dalamnya dan kemudian menggunakan PUKAL COLLECT untuk mengambil data ke dalam koleksi.
Langkah 1: Buat Jadual Contoh
Mula-mula, kami mencipta jadual sampel yang dipanggil pekerja.
BUAT pekerja MEJA (
id_pekerja NUMBER,
nama_pekerja VARCHAR2(50)
);
MASUKKAN KE DALAM pekerja (id_pekerja, nama_pekerja) NILAI (1, 'John Doe');
MASUKKAN KE DALAM pekerja (id_pekerja, nama_pekerja) NILAI (2, 'Jane Smith');
MASUKKAN KE DALAM pekerja (id_pekerja, nama_pekerja) NILAI (3, 'Sam Wilson');
MASUKKAN KE DALAM pekerja (id_pekerja, nama_pekerja) NILAI (4, 'Sara Brown');
MASUKKAN KE DALAM pekerja (id_pekerja, nama_pekerja) NILAI (5, 'Mike Johnson');
KOMIT;
Langkah 2: Blok PL/SQL Menggunakan Pengumpulan Pukal
Kini, kami akan menggunakan PUKAL COLLECT untuk mengambil semua nama pekerja ke dalam koleksi.
ISYTIHKAN
JENIS emp_name_table ADALAH JADUAL VARCHAR2(50); -- Tentukan jenis koleksi
emp_names emp_name_table; -- Isytiharkan pembolehubah jenis itu
BERMULA
-- Kumpul secara pukal nama pekerja ke dalam koleksi
PILIH nama_pekerja KUMPUL PUKAL KE DALAM nama_emp
DARIPADA pekerja;
-- Print the names FOR i IN 1..emp_names.COUNT LOOP DBMS_OUTPUT.PUT_LINE('Employee Name: ' || emp_names(i)); END LOOP;
TAMAT;
/
Penjelasan
Tentukan Jenis Koleksi: Kami mentakrifkan jenis koleksi yang dipanggil emp_name_table untuk menyimpan nama pekerja.
PUKAL KUMPULKAN KE DALAM: Penyata SELECT mengambil semua nilai nama_pekerja daripada jadual pekerja dan mengumpulkannya ke dalam koleksi emp_names sekali gus.
Gelung untuk Memaparkan Hasil: Kami mengulangi koleksi menggunakan COUNT untuk mendapatkan jumlah bilangan penyertaan dan mencetak setiap nama pekerja.
Output
Jika anda menjalankan blok PL/SQL di atas, anda akan melihat output seperti ini:
Nama Pekerja: John Doe
Nama Pekerja: Jane Smith
Nama Pekerja: Sam Wilson
Nama Pekerja: Sara Brown
Nama Pekerja: Mike Johnson
Perkara Penting
Kecekapan: Menggunakan PULK COLLECT mengurangkan bilangan suis konteks antara SQL dan PL/SQL, menjadikannya lebih cekap untuk memproses set data yang besar.
Mengendalikan Data Besar: Ia amat berguna apabila anda bekerja dengan set data yang besar, kerana ia meminimumkan overhed pemprosesan baris individu.
Contoh ini menggambarkan penggunaan asas COLLECT PUKAL untuk mengumpulkan berbilang baris dengan cekap ke dalam koleksi PL/SQL.
Atas ialah kandungan terperinci PUKAL COLLECT dalam PL/SQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!