[SQL ] 連續時間範圍查詢

作者: jimpop (popmij)   2015-12-14 19:23:46
(針對 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`
作者: konkonchou (卡卡貓)   2015-12-15 00:06:00
同表自串找兩兩<=90, 同Accoun不同日期, 紀錄大小日期串出來的結果, 再將此結果 inner join ID,日期兩次有資料存在就是連三次來訪的資料
作者: amber01   2015-12-17 09:47:00
請問要怎麼做同表自串,最近也有類似的問題謝謝你

Links booklink

Contact Us: admin [ a t ] ucptt.com