Встречается на 2% собеседований по Python
В чем разница между JSON и JSONB в PostgreSQL
Основное отличие между JSON и JSONB в PostgreSQL заключается в хранении и обработке данных:
-
JSON хранится как текст в исходном формате, включая пробелы и порядок ключей. Проверяется только на валидность при вставке. Занимает больше места и медленнее работает при операциях.
-
JSONB хранится в бинарном формате (оптимизированном), без пробелов и с сортировкой ключей. Поддерживает индексы, работает быстрее при запросах и занимает меньше места (но может быть чуть медленнее при вставке из-за преобразования).
Пример:
sql
-- Создание таблицы с JSON и JSONB
CREATE TABLE test_data (
id SERIAL PRIMARY KEY,
data_json JSON,
data_jsonb JSONB
);
-- Вставка данных
INSERT INTO test_data (data_json, data_jsonb)
VALUES ('{"name": "Alice", "age": 30}', '{"name": "Alice", "age": 30}');
-- Запрос с условием (JSONB работает эффективнее)
SELECT * FROM test_data WHERE data_jsonb @> '{"age": 30}';Когда использовать:
JSON— если важна точная сохранность формата (пробелы, порядок ключей).JSONB— для большинства случаев, особенно при частых запросах и операциях с данными.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы