Laravel Eloquent 在一个查询中的 where and or between
Laravel Eloquent where and or between in one query
你好,Laravel eloquent 代码是什么:
SELECT *
FROM dtrs
inner join emp_informations
on dtrs.enrollnum = emp_informations.enrollnum
where (emp_informations.EmpID = '07081408')
and (date_in between '2015-03-05' and '2015-03-20' and
date_out between '2015-03-05' and '2015-03-20')
ORDER BY dtrs . date_in DESC
这是我在 eloquent 中的代码,它显示的结果与原始查询不同。
$dtrs=Dtr::Join('emp_informations','dtrs.enrollnum','=','emp_informations.enrolnum')
->where('emp_informations.first_name','like',"%$id%")
->orWhere('emp_informations.last_name','like',"%$id%")
->whereBetween('dtrs.date_in', array('2015-03-05' , '2015-03-20'))
->orderBy('dtrs.date_in','Desc')->paginate(15);
return view('timetrack' , compact('dtrs'));
我的代码有什么问题?
我已经更改了您的查询中的某些内容,请试试这个:
$dtrs=Dtr::Join('emp_informations','dtrs.enrollnum','=','emp_informations.enrolnum')
->where('emp_informations.EmpID','=','07081408')
->whereBetween('dtrs.date_in', array('2015-03-05' , '2015-03-20'))
->whereBetween('dtrs.date_out', array('2015-03-05' , '2015-03-20'))
->orderBy('dtrs.date_in','Desc')->paginate(15);
如果你有变量,你可以这样写:
->whereBetween('dtrs.date_in', array($fromdate , $todate))
你好,Laravel eloquent 代码是什么:
SELECT *
FROM dtrs
inner join emp_informations
on dtrs.enrollnum = emp_informations.enrollnum
where (emp_informations.EmpID = '07081408')
and (date_in between '2015-03-05' and '2015-03-20' and
date_out between '2015-03-05' and '2015-03-20')
ORDER BY dtrs . date_in DESC
这是我在 eloquent 中的代码,它显示的结果与原始查询不同。
$dtrs=Dtr::Join('emp_informations','dtrs.enrollnum','=','emp_informations.enrolnum')
->where('emp_informations.first_name','like',"%$id%")
->orWhere('emp_informations.last_name','like',"%$id%")
->whereBetween('dtrs.date_in', array('2015-03-05' , '2015-03-20'))
->orderBy('dtrs.date_in','Desc')->paginate(15);
return view('timetrack' , compact('dtrs'));
我的代码有什么问题?
我已经更改了您的查询中的某些内容,请试试这个:
$dtrs=Dtr::Join('emp_informations','dtrs.enrollnum','=','emp_informations.enrolnum')
->where('emp_informations.EmpID','=','07081408')
->whereBetween('dtrs.date_in', array('2015-03-05' , '2015-03-20'))
->whereBetween('dtrs.date_out', array('2015-03-05' , '2015-03-20'))
->orderBy('dtrs.date_in','Desc')->paginate(15);
如果你有变量,你可以这样写:
->whereBetween('dtrs.date_in', array($fromdate , $todate))