Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как сформировать запрос на выборку дня (даты), когда на сайт приходило наибольшее количество посетителей?
 
 автор: antf   (10.04.2007 в 15:19)   письмо автору
 
 

Здравствуйте. См. сабж. Какую информацию надо для этого собрать. Что-то плохо соображаю. Заранее спасибо.

   
 
 автор: ШИМ   (10.04.2007 в 15:23)   письмо автору
 
   для: antf   (10.04.2007 в 15:19)
 

Может можно так

SELECT date FROM  table WHERE MAX(hit);


где hit-столбец с кол.посещений

   
 
 автор: antf   (10.04.2007 в 15:30)   письмо автору
 
   для: ШИМ   (10.04.2007 в 15:23)
 

Хмм... То есть потребуется создать таблицу, где фиксировалось бы количество посещений по дням.

   
 
 автор: Trianon   (10.04.2007 в 15:45)   письмо автору
 
   для: antf   (10.04.2007 в 15:30)
 

Чтобы получить число посещений, можно сделать SELECT дата, COUNT(*) as rate GROUP BY (дата)
Чтобы зафиксировать максимум, вычисляется MAX(rate) , по нему определяется конкретная дата.
Запрос довольно сложный выходит. Возможно, лучше действительно сводить итоги раз в сутки.

   
 
 автор: Trianon   (10.04.2007 в 15:45)   письмо автору
 
   для: ШИМ   (10.04.2007 в 15:23)
 

сюрр! :)

   
 
 автор: Loki   (10.04.2007 в 16:42)   письмо автору
 
   для: Trianon   (10.04.2007 в 15:45)
 

столбец hit заполняется админом:)

   
 
 автор: antf   (11.04.2007 в 22:47)   письмо автору
 
   для: Loki   (10.04.2007 в 16:42)
 

Получился вложенный запрос:

$query = "SELECT DATE_FORMAT(date, '%d %b %Y') as date, hits
                  FROM day_statistic
                 WHERE hits = (SELECT MAX(hits) FROM day_statistic)";


SELECT date FROM  table WHERE MAX(hit); 


Такой вариант, к сожалению вызывает синтаксическую ошибку.

   
 
 автор: sms-send   (11.04.2007 в 23:23)   письмо автору
 
   для: antf   (11.04.2007 в 22:47)
 

>
SELECT date FROM  table WHERE MAX(hit); 

>
>Такой вариант, к сожалению вызывает синтаксическую ошибку.

MAX(hit) выдаёт наибольшее значение поля `hit` и должен с чем то сравниваться

   
 
 автор: sms-send   (11.04.2007 в 23:26)   письмо автору
 
   для: antf   (11.04.2007 в 22:47)
 

SELECT DATE_FORMAT(`date`, '%d %b %Y') as `date`, `hits` FROM `day_statistic` ORDER BY `hits` DESC LIMIT 1;

   
 
 автор: ШИМ   (11.04.2007 в 23:49)   письмо автору
 
   для: antf   (11.04.2007 в 22:47)
 

сделай сначала выбор на МАКСИМАЛЬНОЕ!

$query=mysql_qury(SELECT MAX(hits) FROM day_statistic);


а потом вставляй эту переменную(которая уже содержит число макс. во 2 запрос)


$sql = "SELECT DATE_FORMAT(date, '%d %b %Y') as date, hits 
                  FROM day_statistic 
                 WHERE hits = $query

примерно так

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования