Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

PLSQL:Thay thế cho Thủ tục được Lưu trữ để có hiệu suất tối ưu

Trong Oracle, bạn thường không cần sử dụng các bảng tạm thời toàn cục cho những việc này, thay vào đó bạn có thể sử dụng xử lý hàng loạt với các mảng:

declare
   cursor c is
      select col1, col2 from my_view;
   type t is table of c%rowtype;
   array t;
begin
   open c;

   loop
      fetch c bulk collect into array limit 1000;
      exit when array.count = 0;

      for i in 1..array.count loop
         null; -- Perform business logic on array(i) here
      end loop;

      forall i in 1..array.count
         insert into final_table (col1, col2)
            values (array(i).col1, array(i).col2);

   end loop;

   close c;
end;

Đó chỉ là một ví dụ nhỏ - xem bài viết này để biết thêm chi tiết.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các dấu ngoặc đơn lồng nhau trong mệnh đề FROM Cú pháp Oracle SQL có hợp lệ không?

  2. verify_queryable_inventory được trả về ORA-20008:Đã hết thời gian chờ

  3. Di chuyển Cơ sở dữ liệu Oracle từ AWS EC2 sang AWS RDS, Phần 4

  4. Truy vấn tổng hợp Oracle SQL

  5. Giá trị nhận dạng không hợp lệ trong truy vấn lồng đôi với ORDER BY và ROWNUM