JSON — это текстовый формат данных, который представляет собой набор пар ключ-значение.
JSON имеет структуру: {'key' : 'value'}
Основное его отличие от ARRAY - то, что он позволяет обращаться к конкретному элементу не просто по индексу, а по ключу. То есть JSON по сути работает выступает таблицей внутри строки. Очень удобно! :)
Пример создания таблицы с JSON:
CREATE TABLE users (
id BIGINT PRIMARY KEY,
name TEXT,
preferences JSONB
);
INSERT INTO users (name, preferences)
VALUES
(7, 'Alexander', '{"theme": "dark", "notifications": true}'),
(4, 'Vladislav', '{"theme": "light", "notifications": false}');
Мы получим вот такую таблицу:
id | name | preferences |
---|---|---|
7 | Alexander | {"theme": "dark", "notifications": true} |
4 | Vladislav | {"theme": "light", "notifications": false} |
Если бы мы использовали простую таблицу, то у нас было бы больше колонок, а с использованием JSON мы можем хранить сложные структуры в одной колонке.