为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:v8
【操作系统】:win11
【CPU】:i5-9300H
【问题描述】*:每次首次打开达梦数据库时候执行上万条查询语句就会出现查询速度很慢问题 当第一次查询完成之后后面再次查询速度就非常快 这是属于什么问题?求大神解答!
根据您的SQL及执行计划,可以对version列添加索引,再进行测试。
对于这个SQL而言,建议新建一个组合索引:Version, PositionID, AddTime
消除排序;
另外,首次查询可能涉及到物理读,您需要关注的不仅仅是这一条SQL,而是全部类似语句的共性问题,比如您逐一执行1万条语句会导致之前已经读到内存的数据被淘汰了再次跑的时候又需要从磁盘读,自然就慢;形象一点说,这里只是“一棵树”,虽然这棵树的病治好了但是它周围都是“病树”自然又被“传染”,因此撒药的时候得考虑它周围环境;
还有,建议参考下本平台的数据库参数调优,避免内存等ini参数设置不合理导致的性能问题。
您这个执行计划有全表扫描,所以第一次会慢,后面查询的时候数据不用从磁盘中全部读取了,所以变快了。
建议添加索引,索引列(version)