2016-01-16 4 views
0

У меня есть следующее заявлениевыкладываю второй дубликат в таблице

SELECT whatweek, username, team FROM weekpicks GROUP BY team, username HAVING count(*) > 1 ORDER BY 'whatweek' asc

из положить будет найти все дубликаты в таблице, для пользователя, но список не выводится только второй вхождение. несколько раз он отправляет 1-е место, а другие - 2-е. Мне нужно, чтобы он опубликовал только второе вхождение.

+0

Это настоящие произведения? У вас нет ошибки для столбца whatweek? – bdn02

+0

да, этот выбор работает, никаких ошибок. Просто не выбирайте нужное значение, которое я хочу. – aumandg

ответ

0

Вы можете рассчитать необходимое whatweek в подзапроса

SELECT (
     SELECT whatweek 
     FROM weekpicks t 
     WHERE t.username = weekpicks.username 
     AND t.team = weekpicks.team 
     ORDER BY whatweek DESC 
     LIMIT 1) AS `needed_whatweek`, 
     username, team 
    FROM weekpicks 
    GROUP BY team, username 
    HAVING count(*) > 1 

EDIT Или использовать MAX(), его preffer я думаю:

SELECT MAX(whatweek), username, team FROM weekpicks 
GROUP BY team, username HAVING count(*) > 1 
+0

Макс работает отлично, спасибо! – aumandg

Смежные вопросы