У меня есть 3 таблицы mysql: события, артисты и описания (артиста). Все они во многих отношениях.
Таблица 'событий':
ID | eventTitle | etc.
-----------------------
1 | event 1 |
2 | event 2 |
etc.
Стол 'художников':
ID | artistName | etc.
-----------------------
1 | artist 1 |
2 | artist 2 |
etc.
Таблица «описания»:
ID | artistDesc | etc.
----------------------------------
1 | artist 1 description 1 |
2 | artist 1 description 2 |
3 | artist 2 description 1 |
4 | artist 2 description 2 |
5 | artist 3 description 1 |
etc.
Я также сделал соединительные таблицы events_artists
и artists_desctriptions
. Оба они имеют только 2 внешних ключа и служат только для привязки идентификаторов события, артиста и описания.
Обратите внимание на мою таблицу описаний - у каждого художника может быть много описаний. Это фактически означает, что каждое описание относится только к одному конкретному событию. =) * * 1016
Если я сделаю запрос, подобный этому:
$q = "SELECT
events.*,artists.*,descriptions.*,events_artists.*,artists_descriptions.*
FROM
events,artists,descriptions,events_artists,artists_descriptions
WHERE
events.eventID = events_artists.eventID AND
events_artists.artistID = artists.artistID AND
artists.artistID = artists_descriptions.artistID AND
artists_descriptions.descID = descriptions.descID";
Я получу все описания для конкретного художника. Но ни одно из описаний не будет знать, к какому событию они относятся ...
То, что я хочу показать пользователю, выглядит примерно так:
СОБЫТИЕ 1
художник 1 (художник 1, описание 1)
художник 2 (описание художника 2)
СОБЫТИЕ 2
художник 3 (художник 3, описание 6)
художник 1 (художник 1, описание 3)
и т.д.
Должен ли я создать соединительную таблицу для описания события? Если я это сделаю, я не знаю точно, как его использовать, уфф! знак равно
Или, может быть, моя проблема не решается простым запросом? Должен ли я сделать что-то с php тоже? Извините, но я совершенно сбит с толку =)
Надеюсь, мне удалось правильно объяснить мою проблему ...
Заранее спасибо за любую помощь!