我是laravel的新手,我想使用多个where子句并使用curdate()。
这是一个例子:
$data = DB::table('toutcome')->where('date', '>=', curdate())->where('Status', '=', 'A')->count('AppID');
return view('home', compact('data'));
根本不起作用。
答案 0 :(得分:2)
更改
where('date', '>=', curdate())
至
whereRaw('date >= curdate()')
答案 1 :(得分:2)
以及评论中的答案:
public function index()
{
// First query with DB::raw() variant
$data = DB::table('toutcome')
->where('date', '>=', DB::raw('curdate()'))
->where('Status', '=', 'A')
->count('AppID');
// Second query with Carbon variant
$data2 = DB::table('toutcome')
->where('date', '>=', Carbon::now())
->where('Status', '=', 'A')
->count('AppID');
// Third query with '@Sunny' whereRaw variant
$data3 = DB::table('toutcome')
->whereRaw('date >= curdate()')
->where('Status', '=', 'A')
->count('AppID');
return view('home', compact('data','data2','data3'));
}
我不是个人的粉丝,所以我会写:
return view('home', ['data'=>&$data,'data2'=>&$data2,'data3'=>&$data3])
虽然亲自(如果你想继续阅读),请阅读ViewComposers: