|
|
|
| $query ="SELECT * FROM `matchs` LEFT JOIN `teams` on `matchs`.`id_team1`=`teams`.`id_team` where id_pm=$id";
Что делать если в таблице matchs два поля соотвествуют `teams`.`id_team` , т.е. есть team1 и team2, как построить запрос? | |
|
|
|
|
|
|
|
для: Sergeous
(21.06.2007 в 15:54)
| | Ну что, у кого нибудь найдется ответ на мой вопрос?) | |
|
|
|
|
|
|
|
для: Sergeous
(09.08.2007 в 15:31)
| | А что Вы вообще хотите сделать?
И структуры таблиц | |
|
|
|
|
|
|
|
для: Faraon
(09.08.2007 в 15:37)
| | Есть две таблицы.
Первая - команды (id_teams, name)
Вторая - матчи (teams1, teams2, goal1, goal2)
teams1 и teams2 соответствуют id_teams из первой таблицы.
Нужно сделать вывод матчей, вместо teams1 и teams2 подставляется name из первой таблицы. | |
|
|
|
|
|
|
|
для: Sergeous
(21.06.2007 в 15:54)
| | Следует использовать псевдонимы таблиц и полей
к примеру, если нужно выбрать поля name двух копий таблиц teams
$query ="SELECT
`matchs`.*,
t1.name AS name1,
t2.name AS name2
FROM `matchs`
LEFT JOIN `teams` AS t1 on `matchs`.`id_team1`=t1.`id_team`
LEFT JOIN `teams` AS t2 on `matchs`.`id_team2`=t2.`id_team`
where id_pm=$id";
|
| |
|
|
|
|
|
|
|
для: Trianon
(09.08.2007 в 16:01)
| | А смысл два LEFT JOIN делать если автор говорит что teams1 и teams2 равны id_items
и соответственно получается равны между собой | |
|
|
|
|
|
|
|
для: Faraon
(09.08.2007 в 17:03)
| | как это равны?
две команды играют одну матч.
Номера команд по Вашему одинаковы?
Конечно, они соответствуют id_team. Каждая. но в разные копии одной таблицы.
ключа id_items я вообще не нашел. | |
|
|
|
|
|
|
|
для: Trianon
(09.08.2007 в 19:23)
| | id_items это я перепутал с id_teams
Но дело не в этом. Все равно же получается что name1 и name2 будут иметь одно и тоже название из Вашего запроса
P.S. id_team, id_team1, id_team2 этих ключей я тоже не нашел. | |
|
|
|
|
|
|
|
для: Faraon
(10.08.2007 в 08:46)
| | >id_items это я перепутал с id_teams
>Но дело не в этом. Все равно же получается что name1 и name2 будут иметь одно и тоже название из Вашего запроса
Ничего подобного.
Cтолбик с именем первой из команд будет иметь название name1 ,
столбик с именем второй - name2.
И значения у них тоже будут разные. Маловероятно что в таблице окажется запись, указывающая, что очередную игру команда играла сама с собой.
>P.S. id_team, id_team1, id_team2 этих ключей я тоже не нашел.
Смотрите самый первый пост. | |
|
|
|
|
|
|
|
для: Trianon
(10.08.2007 в 09:32)
| | >Смотрите самый первый пост.
Да-а, что-то у автора с каждым постом меняются названия полей.
Я так понимаю в таблице teams, id_team не уникальный.
Если так то тогда в принципе все верно | |
|
|
|
|
|
|
|
для: Faraon
(10.08.2007 в 09:47)
| | Все работает, название команд не одинаковы, ибо в teams1 и teams2 разные значения. А имена тут разные по сравнения с первым постом, потому что он написан давненько).
id_teams кстати уникальный. | |
|
|
|
|
|
|
|
для: Sergeous
(21.06.2007 в 15:54)
| | . | |
|
|
|