sql >> Database >  >> RDS >> PostgreSQL

hoe converteer ik tekst naar jsonB

Volgens Postgres-documentatie :

IMHO levert u een JSON-geformatteerde string, dan moet u de eerste methode gebruiken.

to_json('Fred said "Hi."'::text)  --> "Fred said \"Hi.\""

Als je een array van elementen probeert te krijgen met to_json(text), krijg je de volgende foutmelding:

select *
from jsonb_array_elements_text(to_jsonb('[{"field":15,"operator":0,"value":"1"},{"field":15,"operator":0,"value":"2"},55]'::text));

Maar als je het eerder naar json hebt gecast:

select *
from jsonb_array_elements_text(to_jsonb('[{"field":15,"operator":0,"value":"1"},{"field":15,"operator":0,"value":"2"},55]'::json));

+--------------------------------------------+
|                    value                   |
+--------------------------------------------+
| {"field": 15, "value": "1", "operator": 0} |
+--------------------------------------------+
| {"field": 15, "value": "2", "operator": 0} |
+--------------------------------------------+
| 55                                         |
+--------------------------------------------+


  1. Controleren of SQL-server (elke versie) is geïnstalleerd?

  2. MySQL-licenties en GPL

  3. Een INDEX toevoegen aan een CTE

  4. hoe bereken je het totale aantal zaterdag en zondag tussen twee datums in mysql