写点什么

【YashanDB 知识库】in 大量参数时查询性能慢

作者:YashanDB
  • 2024-12-19
    广东
  • 本文字数:371 字

    阅读完需:约 1 分钟

本文内容来自 YashanDB 官网,原文内容请见 https://www.yashandb.com/newsinfo/7802939.html?templateId=1718516


**【标题】**in 大量参数时查询性能慢


**【关键字】**in 大量参数 FAST FULL SCAN INDEX RANGE SCAN


**【问题描述】**测试表数据量 200w,表结构如图,且在 PHONE 字段上创建了索引



测试 SQL 为:


select name,sum(id) from test1119 where phone in (...) group by name;
且in中的参数大于300个
复制代码


该 SQL 直接运行时间:



【问题原因分析】


通过 explain 可以看到执行计划走了 FFS,但是当前 in 大量参数的场景下走 INDEX FAST FULL SCAN 的性能低于走 INDEX RANGE SCAN。


【解决/规避方法】


1、重新收集统计信息,检查收集统计信息后能否自动走上 INDEX RANGE SCAN


2、如果仍然没有走上 INDEX RANGE SCAN,则使用 hint,修改 SQL 为:




走 range scan 的时间:毫秒级



**【影响范围】**23.2.8.100 之前的所有版本


【修复版本】-

发布于: 刚刚阅读数: 2
用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
【YashanDB知识库】in大量参数时查询性能慢_数据库_YashanDB_InfoQ写作社区