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

Làm cách nào để sử dụng kiểu bảng trong câu lệnh CHỌN TỪ?

Trong SQL, bạn chỉ có thể sử dụng kiểu bảng được xác định ở cấp lược đồ (không phải ở cấp gói hoặc quy trình) và không thể xác định từng bảng theo chỉ mục (mảng kết hợp) ở cấp lược đồ. Vì vậy - bạn phải xác định bảng lồng nhau như thế này

create type exch_row as object (
    currency_cd VARCHAR2(9),
    exch_rt_eur NUMBER,
    exch_rt_usd NUMBER);

create type exch_tbl as table of exch_row;

Và sau đó bạn có thể sử dụng nó trong SQL với toán tử TABLE, ví dụ:

declare
   l_row     exch_row;
   exch_rt   exch_tbl;
begin
   l_row := exch_row('PLN', 100, 100);
   exch_rt  := exch_tbl(l_row);

   for r in (select i.*
               from item i, TABLE(exch_rt) rt
              where i.currency = rt.currency_cd) loop
      -- your code here
   end loop;
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. Chế độ xem vật chất hóa so với Bảng:Ưu điểm là gì?

  2. Lưu trữ Hùng do ORA-16484 TƯƠNG THÍCH

  3. Làm thế nào để mã hóa mật khẩu trong Oracle?

  4. Tạo một bảng / chế độ xem phẳng của một tập hợp dữ liệu được xác định theo thứ bậc

  5. Truy vấn kiểm tra kích thước bảng trong cơ sở dữ liệu Oracle