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

Memanipulasi data JSON dengan SQL di Oracle

Anda dapat menggunakan PUT metode JSON_OBJECT_T untuk menambah/menyetel satu nilai.

Dengan asumsi bahwa Anda memperbarui satu baris ( dengan where klausa), Anda dapat menggunakan blok ini. Jika ada beberapa baris, gunakan loop atau kursor.

 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. PreparedStatement berhasil dieksekusi di Oracle tetapi melempar pengecualian di Microsoft SQL

  2. Sql Pesan dengan di beberapa kolom

  3. Pernyataan SQL untuk menampilkan angka dalam kata-kata tanpa menggunakan fungsi langsung (Oracle)

  4. Oracle TO_DATE dengan hanya input waktu akan menambahkan komponen tanggal berdasarkan logika apa?

  5. Migrasi dari Java 1.4, EJB 1 ke Java 6 dan EJB 3