如果我有两条具有相同溢价ID的记录,我只想获得一条具有最大有效日期的记录。 以下是示例记录
我尝试使用
public function scopeEffectiveDate($query)
{
$current_date = Carbon::now()->toDateTimeString();
return $query->where(max('effective_date'), '<=', $current_date);
} // shows error
和
public function scopeEffectiveDate($query)
{
$current_date = Carbon::now()->toDateTimeString();
return $query->groupBy('insurance_provider_id')->latest('effective_date')->where('effective_date', '<=', $current_date);
}
我得到一个结果,但没有最新的生效日期,这是错误的结果。
答案 0 :(得分:1)
检查此代码
public function scopeEffectiveDate($query)
{
$current_date = Carbon::now()->toDateTimeString();
return $query->orderBy('effective_date', 'desc')->where('effective_date', '<=', $current_date);
}