mysql - 后端设计 统计买家、供应商、买家在某一供应商处下单数是设计一张表还是多张表?
巴扎黑
巴扎黑 2017-04-17 13:26:57
[MySQL讨论组]

后端设计上的一些纠结之处 如需要实时统计买家,供应商的下单数,以及买家在某一供应商处的下单数。
有这么两种方案:
1.针对上述的三种统计分别设计一张表, 如

buyer_order_count_stats
supplier_order_count_stats
buyer_supplier_order_count_stats

优点:
查询只需查询对应的表即可获得买家,供应商,买家在某一供应商处的实时下单数
缺点:
提交订单、取消订单(买家取消、供应商取消)均需要更新三张表

2.只设计一张表 如 buyer_supplier_order_count_stats
当需要查询买家或供应商的下单数时需要通过该表group by得到, 如得到某一页的买家的下单数

select buyer_id, sum(order_count) from buyer_supplier_order_count_stats where buyer_id in (1,2,3,4,...) group by buyer_id

优点:
提交订单、取消订单只需操作一张表
缺点
每次查询都需要实时计算买家或供应商的下单数

老是纠结于这种两可的情况, 耽误了许多开发时间。 不知道针对这一场景过来人更推荐哪种方式?

巴扎黑
巴扎黑

全部回复(1)
大家讲道理

第二种方式的话,你可以在表中添加一个字段,就是买家或供应商的下单总数,每次提交或取消订单的时候+1 或-1 就好了,这样不用每次都去统计下单数了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号