rocky5
Guest
выборка, такая, чтобы сначала ORDER BY а потом DISTINCT (всё это с LIMIT ом)
Конечно вопрос очень простой. =)) а может и нет.
В таблице есть поля name и date (имя и дата)
Нужно отобрать 10 уникальных имён c последними датами;
Казалось бы, можно сделать так:
SELECT DISTINCT name FROM $mytable ORDER BY date DESC LIMIT 10;
НО вспомним документацию:
"Если LIMIT # указывается совместно с DISTINCT, MySQL остановится, как только найдет # уникальных строк."
То есть MYSQL сначала находит 10 уникальных имён, а УЖ ПОТОМ сортирует по дате
А надо, сначала отсортировать по дате, а потом взять 10 уникальных имён.
Подскажите как это сделать КРАСИВО :-/
Конечно вопрос очень простой. =)) а может и нет.
В таблице есть поля name и date (имя и дата)
Нужно отобрать 10 уникальных имён c последними датами;
Казалось бы, можно сделать так:
SELECT DISTINCT name FROM $mytable ORDER BY date DESC LIMIT 10;
НО вспомним документацию:
"Если LIMIT # указывается совместно с DISTINCT, MySQL остановится, как только найдет # уникальных строк."
То есть MYSQL сначала находит 10 уникальных имён, а УЖ ПОТОМ сортирует по дате
А надо, сначала отсортировать по дате, а потом взять 10 уникальных имён.
Подскажите как это сделать КРАСИВО :-/