2016-01-02 38 views
1

我已經繼承了一個應用程序,它將出席日期存儲在MySQL數據庫中。日期存儲爲每週從週一至週五開始的每週期間。從MySQL中存儲的數據獲取最近5周

DB的架構如下圖所示:

PeriodYear | WeekNo | WeekStartDate 
2015  | 49  | 07-12-2015 
2015  | 50  | 14-12-2015 
2015  | 51  | 21-12-2015 
2015  | 52  | 28-12-2015 
2016  | 01  | 04-01-2016 
2016  | 02  | 11-01-2016 

我需要得到過去4周從MySQL。 問題是如果我在當年選擇(ie2016),我只得到1周,因爲第52周是在2015年。

我怎樣才能得到最後4周(即第49周 - 2015年,第52周 - 2015年,第51周至2015年,第50周至2015年)?

+3

顯示您嘗試的代碼。 –

回答

2
SELECT * FROM YOURTABLEHERE 
WHERE WeekStartDate BETWEEN (NOW() - INTERVAL 4 WEEK) AND NOW() 
+0

Th間隔期應該是'周而不是'周' – RamRaider

+0

@RamRaider:更新,謝謝。 – Jan

+0

謝謝你,它工作得很好。我沒有意識到PeriodWeekDate的數據類型不是日期時間,而是int(10)。 – snowflakes74