V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  DissDoge  ›  全部回复第 3 页 / 共 3 页
回复总数  47
1  2  3  
2023-06-27 10:45:55 +08:00
回复了 EggplantLover 创建的主题 程序员 请教一个 sql 优化问题
可以考虑以下几点:

使用合适的索引:确保 task.assignee_id_和 linkd.IDENTITY_的索引是正确创建的。你提到已经添加了索引,但需要确保索引的创建方式正确,并且统计信息是最新的。可以使用数据库的索引优化工具或者执行计划分析来确认索引是否被有效使用。

优化逻辑表达式:该条件涉及多个逻辑运算符( AND 、OR ),可以尝试重新组织条件表达式,优化逻辑判断的顺序。例如,可以将常见的判断条件放在前面,以便更早地过滤掉不符合条件的记录。

考虑联合索引:如果 task.assignee_id_和 task.STATUS_、linkd.IDENTITY_和 linkd.TYPE_之间有相关性,可以考虑创建联合索引。联合索引可以更好地支持多个列的组合条件查询,提高查询效率。

数据库性能调优:除了索引优化外,还可以考虑其他数据库性能调优技术。例如,分析和优化查询计划、调整数据库配置参数、增加硬件资源等。

数据库版本升级:如果你使用的是较旧版本的数据库,可以考虑升级到最新版本,以获得更好的性能优化和查询优化器。

需要注意的是,优化查询的方法因数据库类型和版本而异。建议在具体情况下,结合数据库性能监控和优化工具,以及参考相关数据库的优化文档,针对具体的数据库系统进行优化调整。
2023-06-26 16:20:43 +08:00
回复了 fatyoung 创建的主题 问与答 如何优化这条 sql
可以考虑使用 LEFT JOIN 和 NULL 值判断来优化,避免使用子查询。
SELECT T1.a
FROM T1
LEFT JOIN T2 ON T1.a = T2.a
WHERE T2.a IS NULL;
使用 LEFT JOIN 将 T1 表和 T2 表连接起来,根据 a 列进行匹配。在 WHERE 子句中,筛选出 T2.a 为 NULL 的记录,这表示在 T1 表中有数据但在 T2 表中没有数据。这种方式比使用子查询效率更高,可以减少查询时间。
另外,确保在 T1 表和 T2 表的 a 列上都创建了索引,这样可以进一步提升查询性能。
2023-06-12 09:13:16 +08:00
回复了 ateist 创建的主题 生活 全职考编 vs 在职考编?
上岸第一剑?
2023-06-09 10:38:12 +08:00
回复了 jenhe 创建的主题 OpenAI chatgpt 有毛病?为啥我 ios 订阅了, web 上还给我提示 renew plus?
@Ltsakura Q 卡?还是什么卡呢
2023-06-08 16:27:16 +08:00
回复了 jenhe 创建的主题 OpenAI chatgpt 有毛病?为啥我 ios 订阅了, web 上还给我提示 renew plus?
@BOBTOY 可以认识下你的国际友人吗,我也需要 plus~ 谢谢您
2023-06-08 11:13:37 +08:00
回复了 mario2022 创建的主题 问与答 求推荐接口自动化测试工具
Apipost
冲冲冲,凑个热闹
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1277 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 23:57 · PVG 07:57 · LAX 15:57 · JFK 18:57
Developed with CodeLauncher
♥ Do have faith in what you're doing.