Помогите с запросом

Dave

Новичок
Помогите с запросом

Приветствую.
В таблице хранится распарсеный лог-файл посещений.
Мне нужно выбрать день с максимальным количеством хитов.
1 строка в таблице - 1 хит.
Делаю так:
select date_format(date,'%Y-%m-%d') as date, count(date) as count from `stat`.`stat_main` group by date order by count desc
в результате выводит:
date | count
2004-03-06 |1020
2004-03-05 |2420
2004-03-04 |2156
2004-03-03 |2682

но это не совсем то что мне нужно, нужно 1 запросом получить 1 строку в которой будет date и максимальный count.
Пробовал делать ...MAX(count(date))...GROUP BY DATE- не получается, пробовал делать группировку по count - то же не выходит.

Если можно это сделать одним запросом то подскажите как, плз.
 

Demiurg

Guest
ты уверен, что все именно так ? записи должны быть отсортированы по count.
версия mysql какая ?
 

Dave

Новичок
Делаю груп по date:
select date_format(date,'%Y-%m-%d') as date, max(count(date))as count from `stat`.`stat_main` group by date desc
результат:Error Code : 1111
Invalid use of group function
делаю груп по count: select date_format(date,'%Y-%m-%d') as date, max(count(date))as count from `stat`.`stat_main` group by count
результат тот же.
Версия MySQL:3.23.53-max
 

Demiurg

Guest
не надо max, ты уверен, что при запросе
select date_format(date,'%Y-%m-%d') as date, count(date) as count from `stat`.`stat_main` group by date order by count desc

результат именно такой, как ты его написал в первом посте.
 

chira

Новичок
Код:
select `date`
 , count(`date`) as count
from `stat`.`stat_main` 
group by 1 
order by 2 desc
LIMIT 1
 

Dave

Новичок
Demiurg
гм. сорри. ты прав, при запросе:select date_format(date,'%Y-%m-%d') as date, count(date) as count from `stat`.`stat_main` group by date order by count desc
результат такой:
date | count
2004-03-02 | 2640
2004-03-01 | 2218
2004-03-03 | 1562
2004-03-05 | 1210
порядок сортировки другой. извини если сбил тебя с толку.
chira
Спасибо, тоже вариант, просто гениально, гениальное-просто.
Теперь результат нужный!

интересно а с MAX(), все таки, можно это сделать ?
проблема решена, но все же.
 

chira

Новичок
функции группировки нельзя использовать в виде MAX(COUNT(...))
 
Сверху