Eloquent ORM で次のクエリを実行しようとしていますが、MySQL 関数を実行できないようです -
$post = Post::where('slug', '=', $slug)->where('YEAR(created_at)', '=', $year)->first();
私が得ている例外は次のとおりです-メッセージ:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'YEAR(created_at)' in 'where clause'
SQL: SELECT * FROM `posts` WHERE `slug` = ? AND `YEAR(created_at)` = ? LIMIT 1
Bindings: array (
0 => 'placeholder',
1 => 2013,
)
したがって、基本的には、YEAR()
MySQL 関数を列としてカプセル化しています。生のクエリを使用せずにこれを行う方法はありますか?