.Oracle数据库Where条件执行顺序: 由于SQL优化起来比较复杂,并且还会受环境限制,在开发过程中,写SQL必须必须要遵循以下几点的原则: 1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾. 例如: (低效) SELECT … FROM EMP E WHERE SAL > 50000 AND JOB = ‘MANAGER’ AND 25 < (SELECT CO
相信大家看过无数的MySQL调优经验贴了,会告诉你各种调优手段,如: 避免 select *: join字段走索引: 慎用in和not in,用exists取代in: 避免在where子句中对字段进行函数操作: 尽量避免更新聚集索引: group by如果不需要排序,手动加上 order by null: join选择小表作为驱动表: order by字段尽量走索引... 其中有些手段也许跟随者MySQL版本的升级过时了.我们真的需要背这些调优手段吗?我觉得是没有必要的,在掌握MySQL存储架构
mybatis-plugin插件执行原理 今天主要是在看mybatis的主流程源码,其中比较感兴趣的是mybatis的plugin功能,这里主要记录下mybatis-plugin的插件功能原理. plugin集合列表:在构建SqlSessionFactory时,通过解析配置或者plugin-bean的注入,会将所有的mybatis-plugin都收集到Configuration 对象的interceptorChain属性中.InterceptorChain类定义如下: public class