5.2版本改進了時間欄位的查詢,在簡化原有時間查詢方法的基礎上,增加了三個實用的時間查詢方法:whereYear/whereMonth/whereDay。
whereYear 查詢某年
// 查询今年数据 Blog::whereYear('create_time')->select(); // 查询去年数据 Blog::whereYear('create_time', 'last year')->select(); // 查询2019年数据 Blog::whereYear('create_time', '2019')->select();
#whereMonth 查詢某月
// 查询本月数据 Blog::whereMonth('create_time')->select(); // 查询上月数据 Blog::whereMonth('create_time', 'last month')->select(); // 查询2019年1月数据 Blog::whereMonth('create_time', '2019-1')->select();
#whereDay 查詢某天
// 查询今天数据 Blog::whereDay('create_time')->select(); // 查询昨天数据 Blog::whereDay('create_time', 'yesterday')->select(); // 查询2019-1-1数据 Blog::whereDay('create_time', '2019-1-1')->select();
除了上述查詢年月日的用法外,你可以使用whereBetweenTime查詢任何一個時間區間的資料。
// 查询2019-1-1~1-15日数据 Blog::whereBetweenTime('create_time', '2019-1-1', '2019-1-15')->select();
僅查詢小於或大於某個時間的資料則使用
// 查询2019-1-1以来的数据 Blog::whereTime('create_time', '>=', '2019-1-1')->select();
#因此配合whereTime/whereBetweenTime/whereBetweenTimeField方法的話,基本上涵蓋了所有的時間查詢,而且所有的時間查詢方法支援任何的時間欄位類型,查詢的時候不需要自己做資料轉換會自動處理。
眾多ThinkPHP入門教學,盡在PHP中文網,歡迎線上學習!
本文轉自:https://blog.thinkphp.cn/962856
以上是ThinkPHP5.2:時間查詢(改進、最佳化)的詳細內容。更多資訊請關注PHP中文網其他相關文章!