为了账号安全,请及时绑定邮箱和手机立即绑定

如何缩小 sql 查询范围,sql 查询优化

如何缩小 sql 查询范围,sql 查询优化

犯罪嫌疑人X 2019-07-26 23:50:53
需求【1】有个20w的人员信息数据集(data),包括性别,年龄,省市等数据【2】查询特定性别,特定年龄下的各省份的人员统计数据个人思路【1】先从20w的数据集中,找过特定性别,特定年龄下的人员信息。如20岁男生。得到数据集(data-after-filt),假设仅剩5w条符合的数据。【2】再遍历各城市(366个),针对(data-after-filt)进行统计查询,如查询,兴趣爱好,身高,视力等。【3】通过步骤1,将缩小查询范围,减少数据遍历的总次数。3665w
查看完整描述

2 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

1.缩小查询范围,不是按照你的需求,用性别年龄来做谓词条件?2.不是很明白你要做什么统计,但感觉也不是分组,按照性别年龄筛选,按照城市排序,选择你需要的字段,例如兴趣爱好,身高,视力等。
                            
查看完整回答
反对 回复 2019-07-26
?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

缩小查询范围也不一定是加子查询这样搞,假设你的子查询没有使用到索引的话,子查询就是全表扫描,这个时候效率反而会降低,还不如写成一个查询。提升查询速度无非就是让查询语句少进行全表扫描多走索引。多使用explain看看执行计划。
                            
查看完整回答
反对 回复 2019-07-26
  • 2 回答
  • 0 关注
  • 249 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信