`date_sub`不通过laravel在SQL中工作

rob*_*b_m 4 php mysql sql laravel-4

我遇到了以下laravel代码的问题,在Laravel中执行时没有返回任何行:

$entries = DB::table('chemlog')
        ->where('timestamp', '>=','DATE_SUB(NOW(), INTERVAL 1 DAY')
        ->orderBy('timestamp','desc')
        ->get();
Run Code Online (Sandbox Code Playgroud)

当我在MySQL控制台上执行以下操作时,它可以正常工作:

SELECT * FROM chemlog WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 1 DAY)
Run Code Online (Sandbox Code Playgroud)

Laravel的组装和我在控制台上写的内容有什么区别?

我正在使用:

PHP 5.5, MySQL 5.6, Laravel 4

Jar*_*zyk 9

使用原始声明:

->where('timestamp', '>=', DB::raw('DATE_SUB(NOW(), INTERVAL 1 DAY)'))
Run Code Online (Sandbox Code Playgroud)

区别在于这是一个参数化查询,因此它基本上将其视为一个字符串