2014-06-24 2 views
3

내가 Laravel에서 실행될 때 다음과 같은 laravel 코드 행을 반환하지에 문제가 있어요 통해 SQL에서 작동하지 date_sub` :는`laravel

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

나는 MySQL의 콘솔에서 다음을 실행, 그것은 잘 작동합니다 :

SELECT * FROM chemlog WHERE timestamp >= DATE_SUB(NOW(), INTERVAL 1 DAY) 

Laravel과 콘솔의 차이점은 무엇입니까?

내가 사용하고 있습니다 :

PHP 5.5, MySQL 5.6Laravel 4

답변

8

사용 원료 문 :

->where('timestamp', '>=', DB::raw('DATE_SUB(NOW(), INTERVAL 1 DAY)')) 

의 차이는 이것이 매개 변수화 쿼리, 그래서 그것은 기본적으로 치료 점이다 문자열로

+0

완벽하게 일했습니다! 감사. –