PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Was ist der Unterschied zwischen `->>` und `->` in Postgres SQL?

-> gibt json(b) und ->> zurück gibt text zurück :

with t (jo, ja) as (values
    ('{"a":"b"}'::jsonb,('[1,2]')::jsonb)
)
select
    pg_typeof(jo -> 'a'), pg_typeof(jo ->> 'a'),
    pg_typeof(ja -> 1), pg_typeof(ja ->> 1)
from t
;
 pg_typeof | pg_typeof | pg_typeof | pg_typeof 
-----------+-----------+-----------+-----------
 jsonb     | text      | jsonb     | text