Junior — Middle
Puoi spiegare cos'è il tipo di dato JSONB in un database e come si differenzia dal JSON normale?
sobes.tech AI
Risposta dell'AI
Il tipo di dato JSONB in un database, ad esempio in PostgreSQL, rappresenta una memorizzazione binaria dei dati JSON. A differenza del JSON normale, che memorizza i dati come testo, JSONB li memorizza in formato binario, consentendo:
- operazioni di ricerca e filtraggio più rapide per contenuto.
- l'uso di indici per accelerare le query.
- eliminare duplicati di chiavi e ordinare gli oggetti.
Esempio di utilizzo in PostgreSQL:
CREATE TABLE esempio (
data JSONB
);
INSERT INTO esempio (data) VALUES ('{"name": "Alice", "age": 30}');
-- Ricerca per chiave usando indice
CREATE INDEX idx_data_name ON esempio USING gin ((data -> 'name'));
SELECT * FROM esempio WHERE data ->> 'name' = 'Alice';
Pertanto, JSONB è più efficiente per lavorare con dati JSON quando la performance e la possibilità di query complesse sono importanti.