如何获取在laravel中18个月没有购买的用户的记录?

yrefmtwq  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(101)
$eighteenMonthsAgo = Carbon::now()->subMonths(18);
$modelQuery = $modelQuery->whereHas('hasOrders', function ($query) use($eighteenMonthsAgo) {
$query->whereDate('order_date', '>=', $eighteenMonthsAgo);

字符串
我想为用户谁没有购买了过去18个月的记录。我写了上面的代码,但是失败了。

bq3bfh9z

bq3bfh9z1#

请使用whereDoesntHave而不是whereHas

$eighteenMonthsAgo = Carbon::now()->subMonths(18);
$modelQuery = $modelQuery->with('hasOrders')->whereDoesntHave('hasOrders', function($query) use($eighteenMonthsAgo) {
    $query->whereDate('order_date', '>=', $eighteenMonthsAgo);
});

字符串

相关问题