请教大家一个复杂查询的数据表和 sql 设计问题

2023-06-13 08:36:40 +08:00
 OldCarMan
背景:现在暂时处于建表阶段,所以下面暂时只提供需求场景。



列表数据展示列要求:用户名字,用户下单量,最近下单店铺等字段



需求 1:查询在某店铺下在某段时间内下单量在某个范围的用户列表信息。



需求 2:在此基础上继续过滤买过指定某个商品的用户。



需求 3:需要支持订单数据量较大和大批量数据返回的需求。



PS:在业务实现的基础上,尽量提高查询性能。大佬们有什么看法?谢谢大家回复。
1824 次点击
所在节点    Java
8 条回复
miaotaizi
2023-06-13 08:40:17 +08:00
百度, 谷歌不用, 来发帖也是没谁了.
是不是因为 QQ 群都发过了没人鸟?
sss15
2023-06-13 08:43:16 +08:00
现在毕业设计要求这么复杂了?
opengps
2023-06-13 08:52:34 +08:00
最关键的参数缺失,这需求显然不是实际业务需要
so2back
2023-06-13 09:08:49 +08:00
这。。算不上复杂查询吧
LykorisR
2023-06-13 09:22:17 +08:00
这这........不就是个简单的多条件查询么,大批量也不给个量级?
8355
2023-06-13 09:28:15 +08:00
这个不就是子查询吗
相当于单条 sql 查也不需要连表
封装一下做个 handle 就好了
yesterdaysun
2023-06-13 09:34:02 +08:00
select 用户 id,count(订单 id) as 下单量
from 订单表
where 店铺 id=xxx
and 下单时间 between xxx and xxx
group by 用户 id having count(订单 id) between xxx and xxx

看情况再加索引啥的, 应该不算复杂吧
totoro52
2023-06-13 21:44:32 +08:00
加索引无脑 count 就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/948184

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX