作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在 Laravel 工作。
from_date
到 to_date
。from_date
之后和 to_date
之后离开。这种情况没有被采取如何计算这个条件。我下面的代码请检查
$keyWithData = DB::table('leave_allocations')
->select('employee','leave_type','name')
->where('leave_allocations.from_date','<=',$dateS->format('Y-m-d')." 00:00:00")
->where('leave_allocations.to_date','>=',$dateS->format('Y-m-d')." 00:00:00")
->where('leave_allocations.from_date','<=',$dateE)
->where('leave_allocations.to_date','>=',$dateE)
->where('leave_allocations.employee',$empdata->name)
->where('leave_allocations.leave_type',$type)
->first();
谢谢
最佳答案
我想你只需要 whereBetween()
和 orWhereBetween()
$keyWithData = DB::table('leave_allocations')
->select('employee','leave_type','name')
->where(function($query) use($dateS, $dateE) {
$query->whereBetween('from_date', [
$dateS->format('m-d-Y 00:00:00'),
$dateE->format('m-d-Y 00:00:00')
])
->orWhereBetween('to_date', [
$dateS->format('m-d-Y 00:00:00'),
$dateE->format('m-d-Y 00:00:00')
]);
})
->where([
['leave_allocations.employee',$empdata->name].
['leave_allocations.leave_type',$type]
])
->first();
另一种使用日期范围的方法
// create a period object between new leaves start date and end date.
$period = new \DatePeriod(
$dateS,
new \DateInterval('P1D'),
$dateE
);
// all the days between new leave start date and end date.
$new_leave_dates = [];
foreach ($period as $key => $value) {
array_push($dates, $value->format('Y-m-d'));
}
// get all the rows without those days.
$keyWithData = DB::table('leave_allocations')
->select('employee','leave_type','name')
->whereNotIn('from_date', $new_leave_dates)
->where([
['leave_allocations.employee',$empdata->name].
['leave_allocations.leave_type',$type]
])
->first();
关于php - laravel 在日期 from_date 和 to_date 之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52686094/
return [ Date::make('From Date') ->sortable() ->rules('r
基本上,我想为我的出勤记录表创建报告。 表包含正在更新的 :user_id、:clock_in、:clock_out、:seconds 列。 基本上我的报告需要:计算给定时间段的(秒数总和)。 即20
如何从这个数组转换 [ { "date_from": "2017-05-06 00:00:00", "date_to": "2017-05-08 23:59:5
我在 Laravel 工作。 目前,我在考勤模块工作。 我的问题是离开申请,首先我被申请离开 from_date到 to_date。 接下来,我将通过错误应用相同的日期。 中间日期因错误而适用。这两个
我有一个表格,其中包含基于 from_date 和 to_date 的房间费用: 数据库的格式: planid | roomtype_id | capacity_id | hotel_id |date
我是一名优秀的程序员,十分优秀!