这样的代码上线后会不会崩, GROUP BY 会不会更好或更好的办法是?

查看 62|回复 2
作者:tlerbao   
下面的代码上线后会不会崩
Group by 会不会更好
比他们都好的是(除了单独表已经记录了数值)
// 初始化结果数组
        $monthlyRecordCounts = [];
        // 类型
        $status = [
            '2' => '已上编',
            '3' => '已撤销',
            '4' => '已作废'
        ];
        // 循环 12 个月
        for ($month = 1; $month  $value){
                // 构造起始和结束日期
                $startDate = date('Y-m-01', mktime(0, 0, 0, $month, 1, date('Y')));
                $endDate = date('Y-m-t', mktime(0, 0, 0, $month, 1, date('Y')));
                // 查询该月的记录数
                $count = Db::name('bianzhidan_log')
                    ->where('change_time', '>=', $startDate)
                    ->where('change_time', 'where('status', '=', $key)
                    ->count();
                // 将结果添加到数组中
                $monthlyRecordCounts[$value][] = $count;
            }
        }
        // 输出结果
        print_r($monthlyRecordCounts);

month, DATE, count, Where

Belmode   
不懂 php ,这么写,在数据量尚可的情况下肯定没有业务问题,只是看起来不够凝炼。
从开发惯性上来说,还是 group by 更合理一点。
yc8332   
那肯定不至于。就是慢点而已。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部