Выбрать количество уникальных записей в течении N времени

Romantik

TeaM PHPClub
Выбрать количество уникальных записей в течении N времени

Приветствую уважаемые
помогите пожалуйста решить задачку:

ip | date
----------------------------------------
10.0.0.1 | 2007-08-03 16:00:00
10.0.0.2 | 2007-08-03 16:00:10
10.0.0.3 | 2007-08-03 16:00:20 <--
10.0.0.2 | 2007-08-03 16:00:30
10.0.0.1 | 2007-08-03 16:00:40
10.0.0.1 | 2007-08-03 16:10:05 <--
10.0.0.1 | 2007-08-03 16:20:05 <--

т.е. показать количество заходов (3)
когда юзер заходил только 1 раз в течении 100 секунд

заранее благодарен.
 

Bitterman

Новичок
Первое, что приходит в голову - джойнить таблу саму на себя по совпадению юзера и через INTERVAL и выводить записи, для которых значение поля из второй таблицы (любого, ip например) будет NULL.

ЗЫ Возможно проще будет отслеживать интервал при записи в таблицу и прибавлять какой-нить счетчик.
 

4m@t!c

Александр
Не понял описание задачи.
Что хранится в таблице из которой сделана выборка (лог за день, за год, за все время) и это все поля таблицы?
 

svetasmirnova

маленький монстрик
[sql]
select count(id) from (select id, date, @b:=abs(@a-unix_timestamp(date)) as b, @a := unix_timestamp(date) from romantik) as foo where b>=100;
[/sql]
 
Сверху