TiDB hash left join 有固定的驱动表吗,比如左表?看执行计划是都会选取代价小的作为build,跟其他的数据库MySQL有何不同?咋做到的
2 个赞
您可以试下左右表数据不对等的情况下做个explain analyze,如果对等的情况下应该会走inner join的
2 个赞
3 个赞
按照这个说法,left join 右表是inner表,right join 左表是inner表,然后build都是在inner表
但是,现在的疑问是,无论left join还是right join,都在t2表做了build
3 个赞
理论上返回所有数据的表应该是驱动表合理,看下表的健康度先重新收集统计信息看看
3 个赞
在之前的版本里,TiDB 支持了用 SQL 语义上的 outer 表来作为 build 端进行 hash join。
这个主要是为了优化小表 outer join 大表场景下的表现。
GitHub Issue: https://github.com/pingcap/tidb/issues/6868
2 个赞
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。