Общее количество участников в система по дням

SBS Soft
Дата: 07.02.2013 10:55:54
доброе время суток
есть таблица типа
id | username | regdate
-------------------------
1 | user1 | 2013-02-01
2 | user1 | 2013-02-02
3 | user1 | 2013-02-02
4 | user1 | 2013-02-04
......
с помощю
select count(id), regdate  
from users
group by regdate
order by regdate

можно узнать на каком дате сколько юзеров зарегистрировано
мне нужен запрос до какого дате сколько юзеров зарегистрировано
например
2012-02-01 : 1
2012-02-02 : 3
2012-02-03 : 4
заранее спасибо
tanglir
Дата: 07.02.2013 10:59:41
SBS Soft
select count(u1.id), u2.regdate  
from users u1 
join users u2 on u1.username=u2.username and u1.regdate<=u2.regdate
group by u2.regdate
Добрый Э - Эх
Дата: 07.02.2013 11:09:37
SBS Soft,

надо же было умудрится так витиевато про накопительный итог рассказать ;)
SBS Soft
Дата: 07.02.2013 11:10:39
tanglir,

изн, не понял, что результат в другую table будем записать что ли
tanglir
Дата: 07.02.2013 11:11:44
SBS Soft, а я вопроса не понял. Но всё равно отвечу - нет, ничего никуда записывать не будем :)
SBS Soft
Дата: 07.02.2013 11:36:14
tanglir,

возвращает одинаковый ответ с моим запросом

select count(id), regdate  
from users
group by regdate
order by regdate
tanglir
Дата: 07.02.2013 12:02:55
SBS Soft,

а как это у вас один и тот же юзер в один и тот же день 2 раза зарегистрировался?
SBS Soft
Дата: 07.02.2013 13:14:07
tanglir,

юзер только 1 раз зарегистрируется
сделать отчет о общих количествах юзеров по датам
например из ниже указанного таблица , мне нужен резултат

2013-02-01 : 1
2013-02-02 : 3
2013-02-04 : 4
SBS Soft
Дата: 07.02.2013 13:36:23
SBS Soft,

по точнее общий количество юзеров до даты
tanglir
Дата: 07.02.2013 13:47:28
SBS Soft, короче, то одни у вас данные, то другие... вот вам универсальный, но медленный вариант:

select t2.regdate,sum(t1.c)
from 
(select regdate,count(*) c from users group by 1
) t1 join (
select regdate,count(*) c from users group by 1
) t2 on t1.regdate<=t2.regdate
group by 1