Я работаю над проектом, где у меня есть таблицаSQL таблица перекрестных ссылок самореференция
all_names(
team_name TEXT,
member_name TEXT,
member_start INT,
member_end INT);
То, что я была поставлена задача создает таблицу
participants(
ID SERIAL PRIMARY KEY,
type TEXT,
name TEXT);
, который содержит все имена команд и членов в качестве их собственных записей. Тип может быть либо «командой», либо «членом».
Чтобы добавить комплимент в эту таблицу участников, я пытаюсь создать таблицу перекрестных ссылок, которая позволяет привязывать участника к команде по идентификатору и наоборот. Мой стол выглядит так:
belongs_to(
member_id INT REFERENCES participants(ID),
group_id INT REFERENCES participants(ID),
begin_year INT,
end_year INT,
PRIMARY KEY (member_id, group_id);
Я не уверен, как действовать и правильно заполнять таблицу.
запроса, которую я до сих пор является:
SELECT DISTINCT ON (member_name, team_name)
id, member_name, team_name, member_begin_year, member_end_year
FROM all_names
INNER JOIN artists ON all_names.member_name = participants.name;
, но я не уверен, как поступить. Каков правильный способ заполнения перекрестной справочной таблицы?
Где первичный ключ: all_names; Вы должны стремиться к целому числу. – Alexandros
'project4 = all_names' и' artist = участники'? – Patrick
Что мешает вам ссылаться на «команду» в 'own_to.member_id' и наоборот? –