MySQL认为子查询不是派生的!

本教程将介绍MySQL认为子查询不是派生的!的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

MySQL认为子查询不是派生的! 教程 第1张

问题描述

EXPLAIN SELECT node_id 
 FROM node 
WHERE person_id IN (SELECT person_id 
 FROM user 
WHERE is_locked = 0);

MySql 中的结果告诉我子查询是派生的.但事实并非如此!

(我知道这很容易被重写为 JOIN,但我想知道为什么 MySQL 认为这是一个依赖子查询.)

推荐答案

这是 MySQL 查询优化器中的一个错误.看起来,如果子查询中的表与主查询中的表匹配,即使它显然不应该是,它也被视为依赖子查询,并且没有简单的修复.对不起;去参加吧.

好了关于MySQL认为子查询不是派生的!的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。