湛蓝天 2020-01-01 11:45 采纳率: 0%
浏览 305

mysql 简单的单表查询效率低于了多表联合查询,有大神知道问题的所在吗?

当前有公共优惠券表400余条,用户领取优惠券表7000余条,订单表20万余条,通过单表查询公共优惠券列表扫全表要3秒,通过失效时间查查不了多少,已添加失效时间的索引。
但通过三张表联表查询公共优惠券列表同时查用户领取数,使用的订单数与订单金额等,效率反而提升到了2秒

图片说明

图片说明

图片说明

图片说明

  • 写回答

1条回答 默认 最新

  • 憧憬blog 2023-03-15 03:36
    关注

    首先,单表查询和联表查询的效率问题,可能是由于查询条件、索引、表结构等因素造成的。在这种情况下,通过针对性地优化查询条件、添加合适的索引、合理的表结构设计等,可以提高单表查询的效率。

    其次,联表查询通过使用多张表的关联条件,能够一次性查询出更多的数据,从而避免了对多个表的多次查询,这可以提高联表查询的效率。

    最后,综合考虑数据量、查询条件、表结构等因素,选择合适的查询方式是提高查询效率的关键。在实际情况中,需要根据场景不断试错、优化,才能达到最优的查询效率。

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?