Соединение влево, как указать 1 результат справа? - PullRequest
2 голосов
/ 21 сентября 2011

Это довольно конкретный пример, поэтому я надеюсь на быстрое решение.

У меня есть один результат в таблице лидеров для каждой команды.В моей таблице команд у меня есть несколько результатов для каждой команды (один результат на игру, чтобы включить историю развития команды).

Я хочу показать каждую команду в списке лидеров один раз, и вместо идентификатора команды идентификатор заменяется на strName.Проблема в том, что мое левое соединение дает мне одну запись для каждого результата команды;Я просто хочу одну запись.

    SELECT * , a.strName AS teamName
FROM bb_leaderboards l
LEFT JOIN bb_teams a ON ( l.teamID = a.ID )
WHERE l.season =8
AND l.division =1
ORDER BY l.division DESC , points DESC , wins DESC , l.TDdiff DESC
LIMIT 0 , 30

Что мне нужно сделать, чтобы получить вывод 1: 1?

1 Ответ

1 голос
/ 21 сентября 2011

Вместо этого вы можете сделать SELECT DISTINCT, но вам придется немного сузить свой выбор.Итак:

SELECT DISTINCT l.*, a.strName AS teamName 
...

Это должно отфильтровать дубликаты.

...