这里有一个在laravel查询中需要解决的问题,在这个情况下,我需要从一个表中获取特定日期之间的数据并返回数据,但是我也需要返回所有数据,包括不存在日期。
这是我的桌子结构--
id | date | user_id
1 2022-08-02 1
2 2022-08-02 2
3 2022-08-01 2
现在,如果我从25-07-2022到02-08-2022之间的数据库中获得数据,那么结果集应该是
date | user_count
2022-08-02 2
2022-08-01 1
2022-07-31 0
2022-07-30 0
2022-07-29 0
2022-07-28 0
2022-07-27 0
2022-07-26 0
2022-07-25 0
这就是我需要在查询中获得的结果。请让我知道我应该写哪一个查询来获取上面输出的数据。我已经编写了普通的mysql查询和laravel查询,但无法为上面的输出找到查询解决方案。请提前表示感谢
发布于 2022-08-02 12:00:26
写东西要快,要打印想要的结果
$period = CarbonPeriod::create('2018-06-14', '2018-06-20');
foreach ($period as $date)
{
$arr[] = DB::table('table_name')->selectRaw('date, count(user_id)')->where('date', $date)->get()->toArray();
}
dd($arr);
发布于 2022-08-02 11:45:34
->whereBetween('date',[ 2022-07-25, 2022-08-02])
我想上面的代码会起作用的
https://stackoverflow.com/questions/73206691
复制相似问题