Как сохранить информацию в базе данных?У меня есть словарная таблица A и словарная таблица B, и в зависимости от значения из некоторого столбца в таблице A я хотел бы получить несколько строк из таблицы B.
Интересно, какая структура базы данных является лучшей в моем случае(лучший - самый профессиональный, эффективный и т. д.)
У меня есть таблица d_required_activity (словарь):
CREATE TABLE d_required_activity (
id bigserial primary key,
activity text not null,
);
и d_violence_factor (словарь):
CREATE TABLE d_violence_factor (
id bigserial primary key,
range numrange not null,
score text not null,
description text not null,
);
Теперь, в зависимости от d_violence_factor.score Я хотел бы получить некоторые действия от d_required_activity , например, когда d_violence_factor.score = 3 , тогда я долженполучить 3 строки из d_required_activity .
Я создал третью таблицу: d_violence_factor_d_required_activity:
CREATE TABLE d_violence_factor_d_required_activity (
required_activity_id bigserial not null,
violence_factor_id bigserial not null,
PRIMARY KEY(required_activity_id, violence_factor_id)
);
insert into d_violence_factor_d_required_activity (required_activity_id, violence_factor_id)
values
(1, 1),
(2, 2),
(3, 3),
(4, 3),
(3, 4),
(4, 4),
(5, 4),
(3, 5),
(4, 5),
(5, 5);
Это хороший подход?Должен ли я теперь добавить сущность для d_violence_factor_d_required_activity или, может быть, вы видите лучший подход?
Я использую Spring Boot и JPA + Hibernate ...