2 回答

TA貢獻1891條經驗 獲得超3個贊
我認為您在查詢中犯了一個錯誤。將以下行替換為這些行:
if($Caller_number!=null){
$querypart[] = "caller_number = '$Caller_number'";
}
if($Callee_number!=null){
$querypart[] = "callee_number = '$Callee_number'";
}
$Caller_number(請注意&上的單引號$Callee_number)。
另外,使用該whereRaw()方法而不是where()按照響應評論中建議的方法。

TA貢獻1811條經驗 獲得超6個贊
我添加了一個答案,建議一種通過使用 Laravel 集合方法消除所有條件來簡化代碼的方法if。
$query = Tbcdrnew::query(); //start a query string based on Tbcdrnew model OR you could do DB::table('cdrnew');
collect($paramArray)->filter(function($value, $key){ //convert paramArray into a collection
return $value != ''; //filter all null and empty values
})->each(function($value, $key) use ($query){ //iterate through all filtered values
$query->where(strtolower($key), $value); //assuming array key is always column key in lowercase
});
$result = $query->groupBy('uniqueid')->orderBy('start_date','desc')->get();
我不確定$query->MIN您的原始查詢中是否有有效的查詢生成器函數。
- 2 回答
- 0 關注
- 152 瀏覽
添加回答
舉報