【发布时间】:2018-11-22 22:42:09
【问题描述】:
我有表 requests 和字段
`id` `user_id` `status` `url` `price` `date`
和表 peoplewith 字段
`id` `name` `number` `password` `nickname`
我正在尝试按每个日期对所有请求进行分组,并使用此查询计算每天有多少请求:
$data['dates'] = RequestModel::orderBy('date', 'desc')
->groupBy(DB::raw("DATE_FORMAT(date, '%Y-%m-%d')"))
->take(2)
->get(array(
DB::raw('Date(date) as date'),
DB::raw('COUNT(*) as requests'),
));
这给出了这样的数据:
"dates": [
{
"date": "2018-06-13",
"requests": 230
},
{
"date": "2018-06-12",
"requests": 399
}]
问题是当用户在people 表中创建新请求时,正在创建具有相同number 和不同nickname 的新用户。像这样:
`id` `name` `number` `password` `nickname`
1 jack 555845 pass 555845-1
2 jack 555845 pass 555845-2
我想计算具有不同用户编号的请求,但不知道该怎么做。 可以的话帮帮我
【问题讨论】:
-
我想查看一些示例原始表数据以及预期的输出。
-
尝试在分组前选择 ->select([DB::raw('Date(date) as date')])->groupBy("date")
-
这不是我想要的
-
->select([DB::raw('Date(date) as date')])->groupBy("date") 这给了我今天的日期
-
为什么会这样?你没有设置
people.id主键吗?
标签: php mysql laravel laravel-5