TIDB SQL优化

TIDB SQL优化
 两处标红的需要注意下:

  •  如果去除第一个红框框里面的语句 DESC SQL语句可以发现执行过程发生改变:

TIDB SQL优化

可以发现 t3,t4两张表的userId关联没有走索引。

 /*+ TIDB_INLJ(t3,t4) */

上面这句其实是 TiDB Index Lookup Join 算法 详情:https://segmentfault.com/a/1190000015411838

  • 如果去除第二个红框框里面的语句 DESC SQL语句可以发现执行过程发生改变:

TIDB SQL优化

我们可以发现红框中也没有走索引,原因是两张表的userId一个是Int类型还有一个是varchar类型的,所以需要将字符类型转换下。

本文只讲了这两个方面,其他的TIDB语句优化与Mysql相差不大,处理好索引的使用查询速度都是毫秒级的(生产使用)。