【发布时间】:2014-06-09 22:13:46
【问题描述】:
我正在尝试按今天的日期查询“created_at”字段:
$today = DATE('Y-m-d');
$logs = DB::table('bglogs')->where('DATE('created_at')','=',$today)->where('user_id','=',Auth::user()->id)->get();
它告诉我 DATE('created_at') 是未知列?任何建议,对于 Eloquent 来说都是相对较新的,所以我确信我错过了一些明显的东西。
提前致谢!
编辑:2014 年 6 月 10 日
想要说明的是,我必须对其进行一些调整,因为它要带回所有记录而不是特定日期。不知道为什么。我终于让这个工作正常了。再次感谢所有回答的人,我希望此更新将在未来对其他人有所帮助:
$logs = DB::select(DB::raw("SELECT * FROM bglogs WHERE DATE(created_at) = :today AND user_id = :user"), array('today'=>DATE('Y-m-d'), 'user'=>Auth::user()->id));
【问题讨论】:
-
试试这个 $today = DATE('Y-m-d'); $logs = DB::table('bglogs')->where('created_at','=',$today)->where('user_id','=',Auth::user()->id)- >get(); created_at 列不需要指定DATE函数
-
这就是我的想法,但它没有从数据库中带回任何结果,而且我的记录应该符合该标准。
标签: php mysql sql laravel eloquent