$ tasks-> whereBetween('start_datetime',[$ request ['start_date_report'],$ request ['end_date_report']]);
没有返回$ request ['end_date_report']数据。
此问题通常与Laravel或任何框架无关,问题出在查询逻辑中。
问题可能是这样的:
2017-12-01 08:00:00
和2017-12-02 09:00:00
between '2017-12-01' and '2017-12-02'
这将导致只有一个数据是2017-12-01 08:00:00
,这是因为每个数据库引擎都会将时间默认为00:00:00
,因此您的查询等于between '2017-12-01 00:00:00' and '2017-12-02 00:00:00'
因此,2017-12-02 09:00:00
大于2017-12-02 00:00:00
的上限,因此不包括在结果中
因此,如果您想在结果中包含2017-12-02 09:00:00
,您可以将结束日期添加1天(不包括课程的时间部分),或者确保仅比较日期部分