DengToDeng 2019-08-07 16:05 采纳率: 0%
浏览 686

如何提高mysql数据库查询语句的效率,表里的记录有上亿条,指定了索引还是很慢

SELECT a1.juanhao,a1.c1,a2.c2,a3.c3,a4.c4,a5.c5,a6.c6 FROM"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg1+" AND zigao<"+zg2+" THEN 1 END) AS c1 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a1,"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg2+" AND zigao<"+zg3+" THEN 1 END) AS c2 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a2,"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg3+" AND zigao<"+zg4+" THEN 1 END) AS c3 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a3,"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg4+" AND zigao<"+zg5+" THEN 1 END) AS c4 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a4,"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg5+" AND zigao<"+zg6+" THEN 1 END) AS c5 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a5,"+
"(select juanhao,COUNT(CASE WHEN zigao>="+zg1+" AND zigao<"+zg6+" THEN 1 END) AS c6 FROM juan_information FORCE INDEX(zg) GROUP BY juanhao) AS a6 "+
"where a1.juanhao=a2.juanhao AND a2.juanhao=a3.juanhao AND a3.juanhao=a4.juanhao AND a4.juanhao=a5.juanhao AND a5.juanhao=a6.juanhao


  • 写回答

2条回答 默认 最新

  • 垠迹信息科技 上海垠迹信息科技有限公司官方账号 2019-08-07 16:38
    关注

    用连接查询,leftjoin,如果条件允许,可考虑分表分库

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?