Общие > Базы данных

MySQL COUNT()???

(1/3) > >>

Zotoff:
Пишу статистику для сайта. Хочу сделать отображение реферов. Нужно подсчитать сколько народу перешло от какого сайта. Т.е. каждый хит и хост фиксируется в БД. Нужно выдрать и подсчитать, сколько переходов с какого сайта. Делаю так

SELECT stat_hits.ref,COUNT(stat_hits.id) as hhits ,COUNT(stat_host.id) as hhost FROM stat_hits, stat_host GROUP BY stat_hits.ref, stat_hits.ref ORDER BY hhost DESC LIMIT 20

Понимаю, что наваритил кучу лишнего, но это все что я смог сварить =). Результаты дает явно неверные! В чем ошибка???

Макс:
гораздо полезнее было бы показать дампы таблиц + пояснения к ним (что в каком поле)

Zotoff:
stat_hits и stat_host имеют одну структуру

CREATE TABLE stat_host (
  id int(200) NOT NULL auto_increment,
  ip varchar(15) NOT NULL default \'\',
  agent varchar(100) NOT NULL default \'\',
  ref varchar(200) NOT NULL default \'\',
  date date NOT NULL default \'0000-00-00\',
  time time NOT NULL default \'00:00:00\',
  lang char(2) NOT NULL default \'\',
  PRIMARY KEY  (id)
)
ip, agent, lang, это для статистики. Пока не нужно, просто собираю, для данных. В поле ref пишется HTTP_REFERER. Зачем date и time отдельно, даже не спрашивайте, все равно не смогу объяснить =) т.к. разумного объяснения этому нет.

Макс:
Что то вроде этого :
SELECT ref, COUNT(id) as referers FROM stat_host GROUP BY ref ORDER BY referers

Zotoff:
SELECT ref, COUNT(id) as referers FROM stat_host GROUP BY ref ORDER BY referers
До этого допер сам по манам. Но проблема в другом. Как из 2-х таблиц выдрать, объединить и подсчитать? Т.е. из stat_host и stat_hits?

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии