Sobes.tech
Junior — Middle

Pouvez-vous expliquer ce qu'est le type de données JSONB dans une base de données et en quoi il diffère du JSON normal?

sobes.tech IA

Réponse de l'IA

Le type de données JSONB dans une base de données, par exemple PostgreSQL, représente un stockage binaire des données JSON. Contrairement au JSON classique, qui stocke les données sous forme de texte, JSONB les stocke en format binaire, ce qui permet :

  • d'effectuer plus rapidement des opérations de recherche et de filtrage par contenu.
  • d'utiliser des index pour accélérer les requêtes.
  • d'éliminer la duplication des clés et d'organiser les objets.

Exemple d'utilisation dans PostgreSQL :

CREATE TABLE exemple (
    data JSONB
);

INSERT INTO exemple (data) VALUES ('{"name": "Alice", "age": 30}');

-- Recherche par clé avec index
CREATE INDEX idx_data_name ON exemple USING gin ((data -> 'name'));

SELECT * FROM exemple WHERE data ->> 'name' = 'Alice';

Ainsi, JSONB est plus efficace pour travailler avec des données JSON lorsque la performance et la possibilité de requêtes complexes sont importantes.