Sobes.tech
Middle
6

Какой тип данных можно использовать для денормализации — чтобы запихнуть целую таблицу в одно поле?

Companies where asked
Вкусно и точкаВкусно и точка

Answer from AI

sobes.tech AI

Для денормализации и хранения целой таблицы в одном поле часто используют типы данных, поддерживающие вложенные структуры или коллекции. В реляционных базах данных это может быть тип JSON или JSONB (например, в PostgreSQL), который позволяет хранить сложные объекты и массивы в одном поле.

Пример: в PostgreSQL можно создать поле типа JSONB и записать туда массив объектов, каждый из которых соответствует строке таблицы.

CREATE TABLE orders (
  id SERIAL PRIMARY KEY,
  customer_id INT,
  items JSONB -- здесь можно хранить всю таблицу товаров заказа
);

INSERT INTO orders (customer_id, items) VALUES (
  123,
  '[{"product_id":1, "quantity":2}, {"product_id":2, "quantity":5}]'
);

Таким образом, JSON/JSONB — удобный тип для денормализации и хранения сложных структур в одном поле.