sql优化
禁止使用select * | 禁止使用select * ,必须明确选择所需的列, |
禁止出现重复查询子句 | 可以使用with as替换子句来提升SQL语句执行效率 |
索引列函数 | 在查询索引列上发生函数调用(函数索引除外) |
update禁止出现order by子句 | 防止DML过程出现不必要的排序 |
update必须出现where子句 | 防止DML过程出现全表锁,每句SQL扣1分。 |
禁止更新主键列值 | 不允许有SQL更新主键 |
禁止嵌套select子句 | 防止出现select子句的嵌套子查询,避免出现性能问题 |
delete必须出现where子句 | 防止DML过程出现全表锁 |
delete禁止出现order by子句 | 防止DML过程出现不必要的排序 |
索引全扫 | 执行计划里有INDEX FULL SCAN操作 |
索引跳跃 | 执行计划里有INDEX SKIP SCAN操作 |
全表扫描 | 对于大于200M的表全表扫描,执行计划里有TABLE ACCESS FULL操作 |
笛卡尔积 | 缺少连接条件,导致SQL使用笛卡尔积的方式进行连接 |
嵌套连接过深 | 执行计划中嵌套连接深度超过6层 |
绑定变量 | 未使用绑定变量的SQL |
隐式转换 | 在查询列上发生隐式转换 |
本博客中所有内容为本人自学及总结内容,
仅代表个人观点,如有错误,麻烦大家及时指出并提示我更正。谢谢