如何从今天和之前的日期获取数据?

时间:2017-04-17 08:28:36

标签: php laravel laravel-5

我从数据库中的表中调用数据。我正在添加WHERE语句来过滤从今天到14天前注册的数据。以下是我的代码示例:

$data=DB::connection('oracle_mybase')->table('my_dndomain')
          ->where('my_dndomain.domain_status','=',86)
          ->where('my_dndomain.domain_reg_date','>=',DB::raw('to_date(sysdate)-14'))
          ->where('my_dndomain.domain_extension','=','.com.my')
          ->orwhere('my_dndomain.domain_extension','=','.org.my')
          ->orwhere('my_dndomain.domain_extension','=','.net.my')
          ->orwhere('my_dndomain.domain_extension','=','.my')
          ->get();

但我无法获取数据。

2 个答案:

答案 0 :(得分:3)

您可以使用whereBetween

whereBetween('date', array(Carbon::now()->subWeeks(2), Carbon::now()))

答案 1 :(得分:2)

您可以使用->whereBetween('my_dndomain.domain_reg_date',array($now->subDays(14), $now))

$now = Carbon\Carbon::now();
$twoweeksago = Carbon\Carbon::now()->subDay(14);

$data=DB::connection('oracle_mybase')->table('my_dndomain')
          ->where('my_dndomain.domain_status','=',86)
          ->whereBetween('my_dndomain.domain_reg_date',array($twoweeksago, $now))
          ->where('my_dndomain.domain_extension','=','.com.my')
          ->orwhere('my_dndomain.domain_extension','=','.org.my')
          ->orwhere('my_dndomain.domain_extension','=','.net.my')
          ->orwhere('my_dndomain.domain_extension','=','.my')
          ->whereDate('field_name', '<', $now)
          ->get();
相关问题