Я чувствую, что есть лучший способ сделать это.В основном я просто спрашиваю, правильно ли я делаю, или есть намного лучший способ.
Обратите внимание на эти таблицы:
Users
id | name
---+---------
1 | Andrew
2 | Greg
Images
id | userid | url
---+--------+-------
1 | 1 | img/foo.jpg
2 | 2 | img/bar.jpg
3 | 2 | img/baz.jpg
4 | 1 | img/qux.jpg
Если в таблице Users был один иностранныйключ, который ссылается на изображения, каждый пользователь может быть связан только с одним изображением.Тем не менее, я хотел бы разрешить каждому пользователю быть связанным с любым количеством изображений, следовательно, вместо этого добавив внешний ключ пользователя в изображения.
Я понимаю, как использовать JOIN, если у пользователя есть один внешний ключ к данным, хранящимся в другой таблице.Однако в этом случае есть еще одна таблица с рядом внешних ключей, связанных с интересующим меня пользователем. Как мне создать запрос SELECT, который будет получать все изображения, связанные с пользователем, в дополнение ко всемданные, связанные с пользователем (тип пользователя, номер телефона, бла-бла-бла [я уже знаю, как это сделать]) в одном запросе SELECT?
Или есть ли лучший способ сделать это?
Редактировать 1:
Например, если вы выберете пользователя с id = 1, он вернет первую строку Users, а также первую и последнюю строку Images (поскольку эти строки имеют userid = 1).