You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Laravel查询构造器实现含GETDATE()的BETWEEN条件查询

Laravel查询构造器实现指定条件查询

你可以通过以下几种方式实现所需的查询条件:

方法一:使用whereRaw(最简洁)

直接通过whereRaw写入原生SQL条件片段,适配包含数据库特定函数的场景:

$results = DB::table('your_table')
    ->where('item', 1)
    ->whereRaw('GETDATE() BETWEEN date1 AND date2')
    ->get();

方法二:拆分BETWEEN为范围条件

如果不想直接写原生SQL片段,可将BETWEEN拆分为两个比较条件,结合DB::raw使用:

$results = DB::table('your_table')
    ->where('item', 1)
    ->where(DB::raw('GETDATE()'), '>=', DB::raw('date1'))
    ->where(DB::raw('GETDATE()'), '<=', DB::raw('date2'))
    ->get();

针对Eloquent模型的写法

如果使用Eloquent模型,只需将DB::table('your_table')替换为对应的模型类即可:

use App\Models\YourModel;

$results = YourModel::where('item', 1)
    ->whereRaw('GETDATE() BETWEEN date1 AND date2')
    ->get();

注:GETDATE()是SQL Server的当前日期时间函数,若使用其他数据库(如MySQL)需替换为对应函数(如NOW())。

内容的提问来源于stack exchange,提问作者Steve

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 04:42:34