2017-02-26 17 views
0

私は作業用のクエリを用意していますが、30日後にさらに「tbldomains.nextduedate」を持つレコードのみを表示する節を追加したいと思います。私が試した何Laravel where clause timediff

Capsule::table('tblhosting') 
    ->select('*','tbldomains.nextduedate as domainnextduedate' , 'tblhosting.nextduedate as hostingnextduedate','tbldomains.id as domainid' , 'tblhosting.id as hostingid') 
     ->join('tblclients', 'tblhosting.userid', '=', 'tblclients.id') 
     ->join('tbldomains', 'tblhosting.domain', '=', 'tbldomains.domain')   
     ->whereColumn('tblhosting.nextduedate', '!=', 'tbldomains.nextduedate') 
     ->where('tbldomains.status', '=', 'Active') 
     ->whereDate('tblhosting.termination_date', '=', '0000-00-00') 
     ->where('tblhosting.nextduedate', '!=', '0000-00-00') 
     ->where('tblhosting.server', '!=', '0')    
     ->get() 

->where(Capsule::raw('DATEDIFF(CURDATE(),tbldomains.nextduedate)'),'>','30') 

それはLaravelでけん引作業

感謝していないようです!

答えて

1

Carbonを使ってこれを行うことができます(これはLaravelに付属しています)。

カーボンaddDays()機能を持っているので、私たちは、現在の日から30日を追加するには、このようなものを使用することができます。

\Carbon\Carbon::now()->addDays(30); 

あなたはこのようなあなたのwhere句でそれを使用することができます。

->where('tbldomains.nextduedate', '>', \Carbon\Carbon::now()->addDays(30)) 
+0

魅力のように動作します。ありがとう!! – mitch2k