Я разрабатываю автомобильное веб-приложение, и мне нужно управлять маршрутом для каждой поездки: поездка может иметь несколько остановок. Пример: я еду из города А в город D, проезжая город Б и C. Я могу забрать только людей, идущих в D, или я могу забрать даже людей, идущих в C, и D делает остановку и, возможно, забирает других людей.
Мне нужно сохранить это в базе данных MySQL. Я пытался использовать связанный список, как:
CREATE TABLE ordered_items (
id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
city int NOT NULL,
previous_item_id INT UNSIGNED NULL,
FOREIGN KEY (previous_item_id) REFERENCES ordered_items(item_id),
FOREIGN KEY (city) REFERENCES cities(id)
);
CREATE TABLE offers(
...
path INT NOT NULL,
FOREIGN KEY (path) REFERENCES ordered_items(id)
);
Но я собираюсь иметь дубликаты. есть ли другое решение для этого?