看板 Database 關於我們 聯絡資訊
資料庫名稱: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
billy522: select ID,min(EventDate) from table where 特地區間 07/26 11:15
billy522: group by ID having count(*) >=3 07/26 11:15
billy522: 如果要從第一個時間開始算一年內...就請樓下大大幫忙了 07/26 11:17
moyasi: http://sqlfiddle.com/#!4/b7de8b9/46 07/27 13:59
cutekid: 推 moyasi 大大 →EventDate + 10000 這招(Y) 07/27 14:14