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

Sử dụng giá trị của một biến chuỗi trong vòng lặp SQL FOR-IN (SELECT)

Giả sử PL / SQL của Oracle, bạn có thể mở REFCURSOR sử dụng Chuỗi động và gọi nó trong LOOP ..

PROCEDURE run(p_boolean BOOLEAN)
IS
BEGIN
  DECLARE
    v_mystring VARCHAR(50);
    v_my_ref_cursor sys_refcursor;
  BEGIN
    IF p_boolean = TRUE
    THEN
      v_mystring := 'SELECT something...';
    ELSE
      v_mystring := 'SELECT something else...';
    END IF;

    OPEN v_my_ref_cursor FOR v_mystring;

    LOOP
      FETCH v_my_ref_cursor INTO your_variables/record
      EXIT WHEN v_my_ref_cursor%NOTFOUND;
        ..

    END LOOP;
    CLOSE v_my_ref_cursor;

  END;
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. So sánh hai lược đồ và cập nhật lược đồ cũ với các cột mới của lược đồ mới

  2. Bộ nhớ đệm trình tự Oracle

  3. Đọc dấu thời gian khi nhập dữ liệu trong SQL Developer

  4. Phân biệt các giá trị CSV sử dụng REGEXP_REPLACE trong tiên tri

  5. bao nhiêu CPU một phiên tiêu thụ tại một thời điểm nhất định trong oracle