我有一张桌子
C:\Users\navkuma>powershell
Windows PowerShell
Copyright (C) 2016 Microsoft Corporation. All rights reserved.
PS C:\Users\navkuma>
我想选择两个日期之间的日期。我有一个查询
+---------------------+-----------
| id | start_date | End_date |
+---------------------+-----------+
| 1 | 2017-07-07 | 2017-07-31|
| 2 | 2017-08-01 | 2017-08-31|
| 3 | 2017-09-01 | 2017-09-10|
|
+------+--------------+-----------+
我想将此查询转换为laravel,所以我尝试了这个
SELECT * FROM Financial_Year WHERE CURDATE() between `start_date` and `End_date`
但我没有得到输出。非常感谢。
答案 0 :(得分:3)
在这里你可以使用laravel whereRaw()来实现这一点。
就像这样
$dt = Carbon::now();
$getmonths= DB::table('Financial_Year')
->whereRaw('"'.$dt.'" between `start_date` and `End_date`')
->get();
答案 1 :(得分:1)
您可以使用Carbon本机功能:
http://carbon.nesbot.com/docs/
$first = Carbon::create(2012, 9, 5, 1);
$second = Carbon::create(2012, 9, 5, 5);
var_dump(Carbon::create(2012, 9, 5, 3)->between($first, $second)); // bool(true)
var_dump(Carbon::create(2012, 9, 5, 5)->between($first, $second)); // bool(true)
答案 2 :(得分:0)
如果您只想使用Laravel Query Builder,可以尝试:
$date_start = Carbon::now()->startOfYear();
$date_end = Carbon::now()->endOfYear();
$query = Model::where('created_at', '<=', $date_end)
->where('created_at', '>=', $date_start)
->get();
在date_start和date_end的变量中,您将放置要使用的范围。也许是在同一个月,在同一年或你可以使用:
$date = Carbon::create(2012, 9, 5, 5);
手动确定日期。