Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.02.25;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по SQL   Найти похожие ветки 

 
DmitryNekl   (2007-02-09 05:16) [0]

Здравствуйте, мастера!

У меня проблема такая. Собираю статистику посещения сайта. Есть таблица такой структуры:

id int(11)
user_ip varchar(15)
page varchar(255)
date_time datetime
referer varchar(255)

Хочу получить данные о числе хостов и хитов по страницам за  определенный период. Сделал такой запрос:

SELECT `page`, count(distinct `user_ip`) as "hosts", count(`id`) as "hits" FROM `tbl_stat` WHERE DATE(`date_time`) >= "2007-01-25" and DATE(`date_time`) <= "2007-02-09" GROUP BY `page`

В результате выдается:
...
/articles.html?id=1 2 2
/articles.html?id=2 2 2
/articles.html?id=1 3 4
/articles.html?id=2 1 1
/articles.html?id=1 1 2
/articles.html?id=2 1 1
...

Никак не могу понять, откуда берутся эти повторения страниц и как сделать так, чтобы данные по страницам дейсвительно группировались, т.е. вместо шести вышеприведенных строчек были две:

/articles.html?id=1 6 8
/articles.html?id=2 4 4

Надеюсь на вашу помощь! Заранее спасибо!


 
ЮЮ ©   (2007-02-09 05:44) [1]

Согласно всем првилам SQL  должен получаить именно то что хочешь. Единственое предположение, что выполняется вовсе не тот запрос, что ты привёл.


 
DmitryNekl   (2007-02-09 10:00) [2]

Хм... я непосредственно перед выполнением запроса его просматриваю - именно этот :(. А в чем еще может быть проблема?


 
Sergey13 ©   (2007-02-09 10:13) [3]

А если вместо count(distinct `user_ip`) сделать просто count(`user_ip`) повторения останутся?
Я понимаю, что смысл будет другой, просто сомнения меня гложут насчет правомерности подобного действия, а проверять самому лень.


 
DmitryNekl   (2007-02-09 10:29) [4]

Если убрать distinct, повторения пропадают.
Но зато появляется вопрос - а как сделать тогда то, что я хочу?


 
Sergey13 ©   (2007-02-09 10:48) [5]

> [4] DmitryNekl   (09.02.07 10:29)

Сделай двумя запросами. Все таки группировка подразумевает связанные данные (типа количество и сумма чего-то), а ты хочешь получить просто 2 несвязанных результата. Или я не очень въехал в условия.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.02.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.042 c
3-1164966057
salexn
2006-12-01 12:40
2007.02.25
Embedded Yaffil и UDF


2-1170875608
apelsin
2007-02-07 22:13
2007.02.25
проблема с DBGrid ом


15-1170574988
helpme
2007-02-04 10:43
2007.02.25
zeos


6-1157879032
yuorn4ik
2006-09-10 13:03
2007.02.25
Настройки локальной сети


2-1170663952
Fs
2007-02-05 11:25
2007.02.25
Связка таблиц?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский