使用Laravel 5.1

时间:2015-11-27 07:37:07

标签: php laravel-5.1

我想从Laravel 5.1中的最近两小时内插入数据库中的所有记录。我可以使用以下代码获取最近1小时的记录:

$all_bridal_requests_check2 = \DB::table('bridal_requests')
                    ->where(function($query)
                    {
                        $query->where('publisher', '=', 'bq-quotes.sb.com')
                              ->orWhere('publisher', '=', 'bq-wd.com-bsf');
                    })
                    ->where('created_on', '>=', \Carbon\Carbon::now()->subHour())
                    ->orderBy('created_on', 'desc')
                    ->get();

3 个答案:

答案 0 :(得分:1)

使用MySQL NOW()INTERVAL

WHERE `created_on` > NOW() - INTERVAL 2 HOUR
<\ n>在Laravel

->where('created_on', '>', NOW() - INTERVAL 2 HOUR)

答案 1 :(得分:1)

使用“subHours(2)”

而不是“subHour”
->where('created_on', '>=', \Carbon\Carbon::now()->subHours(2))

答案 2 :(得分:0)

试试这个:

$all_bridal_requests_check2 = \DB::table('bridal_requests')
                    ->where(function($query)
                    {
                        $query->where('publisher', '=', 'bq-quotes.sb.com')
                              ->orWhere('publisher', '=', 'bq-wd.com-bsf');
                    })
                    ->where(\DB::raw('date >= DATE_SUB(NOW(), INTERVAL 2 HOUR)')) ->count()
                    ->orderBy('created_on', 'desc')
                    ->get();