[SQL ] 連續時間範圍查詢
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
資料庫名稱: MySQL
資料庫版本: 5.6
內容/問題描述:
這是我朋友問我的一個問題,本來以為不會很難...
結果還真的無法用一個SELECT做出條件XD
假設一家餐廳有會員制,每次來的會員都會記錄在資料庫內。
要如何找出連續三個月(假設90天)都有來的會員
EX: 撈取範圍 2015/01/01 - 2015/12/14
他的意思是
A會員 上次來的時間是 2015/08/01
(以今日來說已經超過90天了)
上兩次來的時間是 2015/07/15
(雖然前一次沒超過90天,但上次來的時間已經超過,不符合。)
B會員 上次來的時間是 2015/10/01
(以今日來說有在90天內,符合條件!)
上兩次來的時間是 2015/07/15
(以2015/10/01來說在90天內,符合條件!)
上三次來的時間是 2015/05/15
(以2015/10/01來說在90天內,符合條件!)
......
直到距離2015/01/01皆有90天者,符合條件!
本來我想要借助第二語言(PHP、JSP...等)
這樣子就很好達成結果。
但我也好奇這樣是否有辦法讓SQL條件式一次得到結果XD
感謝各位大大XD
`account`
------------
`id` - primary id
`name` - varchar
`check`
------------
`id` - primary id
`check_time` - int(10) unsigned [UNIX Time]
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.254.121.44
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1450092229.A.AE7.html
→
12/15 00:06, , 1F
12/15 00:06, 1F
→
12/15 00:07, , 2F
12/15 00:07, 2F
→
12/15 00:07, , 3F
12/15 00:07, 3F
推
12/17 09:47, , 4F
12/17 09:47, 4F
→
12/17 09:47, , 5F
12/17 09:47, 5F