PostgreSQL má prvotřídní JSON podporu s JSONB.
Operátory¶
SELECT data->>’name’ FROM events; SELECT * FROM events WHERE data->>’type’=’click’; SELECT * FROM events WHERE data @> ‘{“type”:”click”}’; SELECT * FROM events WHERE data ? ‘email’;
Indexy¶
CREATE INDEX idx_data ON events USING GIN (data); CREATE INDEX idx_type ON events ((data->>’type’));
Manipulace¶
UPDATE users SET data=data||’{“verified”:true}’; UPDATE users SET data=data-‘temp’; UPDATE users SET data=jsonb_set(data,’{address,city}’,‘“Praha”’);
JSONB = flexibilita + výkon¶
GIN index pro rychlé dotazy.