sql >> Database >  >> RDS >> Oracle

JSON-gegevens manipuleren met SQL in Oracle

Je zou de PUT . kunnen gebruiken methode van JSON_OBJECT_T om een ​​enkele waarde toe te voegen/in te stellen.

Ervan uitgaande dat u een enkele rij bijwerkt( met een where clausule), kunt u dit blok gebruiken. Als er meerdere rijen zijn, gebruik dan een lus of cursor.

 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. MySQL-database en tabelgroottes controleren

  2. Niet de juiste COUNT() krijgen in MySQL-query (eerder gewijzigd)

  3. HAProxy-verbindingen versus MySQL-verbindingen - wat u moet weten

  4. MySQL -PHP invoegen DATETIME