MySQL一个关于derived table的bug描述与规避


关联文章:
  • MySQL对derived table的优化处理与使用限制

一、Bug描述
同事遇到一个有意思的语句,说一条SQL在MySQL8.0.25版本运行出的结果明显与给定的where条件不符,而在8.0.26版本上是正常的,语句上加了一个无关的用户变量后在8.0.25版本上结果才是正确的,想不通这是怎么回事,这么有意思的事情自然引起了我的兴趣,借此机会深入了解了一下MySQL关于derived table的优化。为了方便演示效果,让小伙伴们关注到现象的本质,我将语句进行了简化处理。