2017-10-05 52 views
-2

我的要求:我选择使用下列条件Laravel条件查询不能

  1. beaseleads currentstatus列值有新的领导状态或

  2. beaseleads currentstatus列值有随机顺序baseleads表呼叫不采摘状态和updated_at日期为不等于今天日期

我Laravel查询低于

$baseleadsData=Baseleads::inRandomOrder()->Where('process_status',0)->where(function ($query) { 
     $query->where('current_status','New Lead'); 
     $query->Orwhere('current_status','Call Not Picking'); 
$query->OrwhereDate('updated_at', '!=', date('Y-m-d')); 
    })->first(); 

其无法正常工作。我的错误是什么?

+0

尝试启用查询日志记录使用方法名。你有任何错误或你没有得到预期的结果? –

+0

我没有期望的结果? @BasheerAhmedKharoti – Karthik

+0

尝试'DB :: enableQueryLog()'只是在查询之前和之后查询把'dd(DB :: getQueryLog())' –

回答

0

它已经,因为我用Laravel一段时间,但你有没有尝试过的

$query->where('current_status','New Lead'); 
     $query->Orwhere('current_status','Call Not Picking'); 

我不知道这会工作,因为它看起来

$query->where('current_status', '=', 'New Lead'); 
     $query->Orwhere('current_status', '=', 'Call Not Picking'); 

,而不是像Laravel将自动进行比较。什么是你得到的错误代码? (您可以在设置文件上开启调试模式)

+0

if当前状态等于“Call Not Picking”状态,我需要检查updated_at是否等于今天的日期@Liam S – Karthik

+0

当然,你只需保留下一行。您可以随时保持整洁,并使用: $ query-> Orwhere('''''current_status','=','Call Not Picking'], ['updated_at','!=',date('Ym- d')] ]); –

0

你需要驼峰 使用orWhereorWhereDate

1
->where(function ($query) { 

     $query->where('current_status','New Lead') 

       ->orWhere('current_status','Call Not Picking') 

       ->orWhere('updated_at', '!=', date('Y-m-d').' 00:00:00');})->first();