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

Thao tác dữ liệu JSON với SQL trong Oracle

Bạn có thể sử dụng PUT phương thức của JSON_OBJECT_T để thêm / đặt một giá trị duy nhất.

Giả sử rằng bạn cập nhật một hàng duy nhất (với where ), bạn có thể sử dụng khối này. Nếu có nhiều hàng, hãy sử dụng một vòng lặp hoặc con trỏ.

 DECLARE
  v_pertags dmo_person.per_tags%TYPE;
  v_json_obj JSON_OBJECT_T;
  v_new_pertags dmo_person.per_tags%TYPE;
BEGIN
  SELECT per_tags
  INTO   v_pertags
  FROM   dmo_person; --where clause
  v_json_obj := TREAT(json_element_t.PARSE(v_pertags) AS json_object_t);
  v_json_obj.PUT('perm_bigboss' , 1);
  v_json_obj.PUT('perm_admin', 0);
  v_new_pertags := v_json_obj.to_string;

UPDATE dmo_person
  SET    per_tags = v_new_pertags; --where clause
END;
/ 

LIVESQL DEMO



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle xóa các hàng khỏi nhiều bảng

  2. Oracle 11.2 Windows không thể khởi động với hai dòng

  3. Chế độ xem cụ thể hóa trong oracle với Làm mới nhanh thay vì liều lượng hoàn chỉnh không hoạt động

  4. Làm thế nào để chạy một thủ tục được lưu trữ trong oracle sql developer?

  5. Xuất kết quả truy vấn sang tệp XML khi sử dụng SQLcl (Oracle)