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

Gunakan nilai variabel string dalam loop SQL FOR-IN (SELECT)

Dengan asumsi PL/SQL Oracle, Anda dapat membuka REFCURSOR menggunakan String dinamis dan menyebutnya dalam 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. Apakah implementasi ini sesuai dengan SQL-92?

  2. Apa perbedaan antara pls_integer dan binary_integer?

  3. Cara bekerja dengan Fungsi tanggal di Oracle sql

  4. kolom tidak dapat ditangguhkan nol

  5. Format tanggal default Oracle adalah YYYY-MM-DD, MENGAPA?