У меня есть таблица SQL под названием Listing
, которая представляет дома, которые были арендованы.В таблице есть первичный ключ id
и другое поле, называемое amenities
, в котором указаны вещи, которые должен предлагать каждый дом.Удобства каждого дома отделены друг от друга запятой.Например, TV, Internet, Bathroom
.
Я использовал следующие команды, чтобы создать таблицу под названием Amenity со всеми уникальными предлагаемыми удобствами и номером SERIAL
для каждого удобства.
CREATE TABLE Amenity AS(
SELECT DISTINCT regexp_split_to_table(amenities,',') FROM Listing
);
ALTER TABLE Amenity
RENAME regexp_split_to_table to amenity_name;
ALTER TABLE Amenity ADD COLUMN amenity_id SERIAL;
ALTER TABLE Amenity ADD PRIMARY KEY(amenity_id);
Myпроблема заключается в том, что мне нужно связать эти две таблицы с внешним ключом, и я не знаю, как, поскольку отношения между ними являются отношениями многих ко многим.Я проверял другие вопросы, касающиеся внешних ключей во многих отношениях, но не смог найти ничего похожего.Если есть что-то подобное, пожалуйста, объясните, как это похоже на мой вопрос.