[SQL ] 查詢特定時間內滿足3次的第一筆資料

看板Database作者 (Mutex)時間8年前 (2015/07/26 07:35), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/2 (看更多)
資料庫名稱:SQL 資料庫版本:2012 內容/問題描述: 想要請教如何計算某特定區間內,滿足3次的設定條件,並呈現第一筆的日期 也可以說是"計算任何一年區間內,有出現三筆資料,並呈現第一筆資料日期" 資料範例如下 ID EventDate A 20050101 A 20051201 A 20060215 A 20060425 B 20100505 B 20100707 B 20100808 B 20110404 B 20110425 C 20000101 C 20000606 想要算出的答案應該是 A 20050601 <<< 從20051201開始算一年內,count >= 3,所以答案是20051201 因為從20050101開始算一年內,沒有滿足3次的條件,所以不是這天 B 20100505 <<< 20100505、20100707、20100808都有滿足條件,但求最小值2010505 C則因為沒有滿足條件,所以答案不會有C 再麻煩高手協助解惑了 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.146.235 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1437867306.A.F21.html

07/26 11:15, , 1F
select ID,min(EventDate) from table where 特地區間
07/26 11:15, 1F

07/26 11:15, , 2F
group by ID having count(*) >=3
07/26 11:15, 2F

07/26 11:17, , 3F
如果要從第一個時間開始算一年內...就請樓下大大幫忙了
07/26 11:17, 3F

07/27 13:59, , 4F

07/27 14:14, , 5F
推 moyasi 大大 →EventDate + 10000 這招(Y)
07/27 14:14, 5F
文章代碼(AID): #1Lj1qgyX (Database)
文章代碼(AID): #1Lj1qgyX (Database)