Junior — Middle
Pode explicar o que é o tipo de dados JSONB numa base de dados e como ele difere do JSON normal?
sobes.tech IA
Resposta da IA
O tipo de dados JSONB numa base de dados, por exemplo no PostgreSQL, representa um armazenamento binário de dados JSON. Ao contrário do JSON normal, que armazena dados como texto, o JSONB guarda-os em formato binário, o que permite:
- Executar operações de pesquisa e filtragem mais rapidamente por conteúdo.
- Utilizar índices para acelerar as consultas.
- Eliminar duplicados de chaves e ordenar objetos.
Exemplo de uso no PostgreSQL:
CREATE TABLE exemplo (
data JSONB
);
INSERT INTO exemplo (data) VALUES ('{"name": "Alice", "age": 30}');
-- Pesquisa por chave usando índice
CREATE INDEX idx_data_name ON exemplo USING gin ((data -> 'name'));
SELECT * FROM exemplo WHERE data ->> 'name' = 'Alice';
Assim, o JSONB é mais eficiente para trabalhar com dados JSON quando a performance e a capacidade de realizar consultas complexas são importantes.