开发者社区> 问答> 正文

关于 PHP 中订单按照从大到小的顺序排序的思路.

已解决

现在我的需求是这样的,
每一个用户会产生 N 多订单 现在要排序 订单数量从大到小 的用户.

如果按照传统 我先将每一个用户的订单总数统计,然后进行排序.这样一但数据量变大基本无法排序会很消耗系统资源统计时间也会变长.请问有什么方法吗?

展开
收起
星球华人 2016-04-09 16:02:01 2994 0
1 条回答
写回答
取消 提交回答
  • 采纳回答

    0.假设一天几十万的订单,搞个脚本,每天跑一次,统计一天的订单数
    1.根据订单时间从数据库获取每天的总订单

    可以为时间加上索引
    2.根据取出的数据,从程序方面,按用户分组,统计订单中每位用户的订单数

    不要用sql来做分组统计,因为数据库压力会非常大,可以放到php中来做处理,统计这些订单中的每一个用户有多少订单,相当于sql中的group by user
    3.然后加到用户的订单总数中,可以放到redis中

    2019-07-17 18:40:12
    赞同 展开评论 打赏
问答分类:
PHP
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载
复杂PHP系统性能瓶颈排查及优化 立即下载