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

PLSQL lặp qua đối tượng JSON

Từ Oracle 12, bạn có thể sử dụng các kiểu đối tượng JSON PL / SQL để lặp qua mảng JSON và trích xuất giá trị của nhóm group thuộc tính của các đối tượng:

DECLARE
  value VARCHAR2(4000) := '[{"group":"groupa","status":"active"},{"group":"groupb","status":"inactive"}]';
  ja JSON_ARRAY_T := JSON_ARRAY_T.PARSE(value);
  je JSON_ELEMENT_T;
  grp VARCHAR2(20);
  i  PLS_INTEGER := 0;
BEGIN
  LOOP
    je := ja.GET(i);
    EXIT WHEN je IS NULL;
    grp := TREAT(je AS JSON_OBJECT_T).get_string('group');
    DBMS_OUTPUT.PUT_LINE(grp);
    i := i + 1;
  END LOOP;
END;
/

Kết quả đầu ra:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-08177:không thể tuần tự hóa quyền truy cập cho giao dịch này

  2. Sử dụng Entity Framework trong .net 4.0 với cơ sở dữ liệu Oracle - có thể không?

  3. Oracle Sql Loader ORA-01722:số không hợp lệ khi tải tệp CSV với phần cuối dòng Windows

  4. Nội năng của bảng KÉP?

  5. Hàm TRUNC (ngày tháng) trong Oracle