Re: [SQL ] 請問計算事件發生的天數

作者: cutekid (可愛小孩子)   2014-11-05 08:42:25
select dayCount,count(dayCount) pCount
from (
select count(uid) dayCount
from (
select uid
from yourTable
group by uid,date
) T1
group by uid
) T2
group by dayCount
※ 引述《qm29213039 (崩啾)》之銘言:
: (針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
: 資料庫名稱: MySql
: 資料庫版本:
: 內容/問題描述:
: 以下日期都是timestamp,為了方便我先改成datetime
: date uid eventTime event
: 2014/10/01 2 2014/10/01 03:20:35 事件一
: 2014/10/01 2 2014/10/01 03:25:40 事件二
: 2014/10/02 2 2014/10/02 03:30:30 事件一
: 2014/10/01 3 2014/10/01 11:22:34 事件二
: 2014/10/03 3 2014/10/03 08:20:34 事件二
: 2014/10/04 3 2014/10/04 20:35:56 事件一
: 2014/10/03 4 2014/10/03 17:20:50 事件一
: 2014/10/01 5 2014/10/01 08:55:20 事件一
: 2014/10/05 5 2014/10/05 20:20:33 事件一
: 像uid 2的user,雖然他有三個事件,但是是分散在兩天,所以他算是只有兩天有發生事件
: 所以uid發生事件: uid2 -> 2天
: uid3 -> 3天
: uid4 -> 1天
: uid5 -> 2天
: 以下是我想呈現在前端的樣子
: 10月發生事件1天的人有1人
: 10月發生事件2天的人有2人
: 10月發生事件3天的人有1人
: 我本來是想用count(distinct date)whrer uid去算出天數
: 可是uid太多(約數萬),所以有點卡住
: 想請問怎樣下SQL語法比較好?

Links booklink

Contact Us: admin [ a t ] ucptt.com