select *
from tr_sewaiklan
where '2018-12-09' BETWEEN tgl_mulai AND tgl_selesai
答案 0 :(得分:1)
DB::tabe('tr_swaiklan')->where('2018-12-09', '>', $tgl_mulai)->where('2018-12-09', '<', $tgl_selesai)->get();
也可能使用<>
运算符
它在官方文档中有很好的描述:https://laravel.com/docs/5.7/queries#where-clauses
答案 1 :(得分:1)
请参见Laravel Eloquent how to use between operator
要在没有模型的情况下进行修补,请尝试
\DB::table('table')->whereBetween('date_field', ['2018-12-09', '2019-01-01'])->get();
来自评论
DB::table('tr_sewaiklan')->where(function ($query) {
$query
->where('tgl_mulai', '<', '2018-12-09')
->where('tgl_selesai', '>', '2018-12-09');
});
答案 2 :(得分:0)
最后我解决了原始表达式的问题,因为whereBetween格式是field_date然后是value_date,但是在我的情况下,我的查询格式是value_date然后是field_date。
感谢您的帮助。.
DB::select(DB::raw("SELECT a.* FROM tr_sewaiklan a LEFT JOIN tb_iklanposisi b ON a.id_posisi=b.id WHERE '".date('Y-m-d')."' BETWEEN tgl_mulai AND tgl_selesai"));