为什么这个mysql查询仍然没有正确的ON条件运行

时间:2013-02-19 15:39:04

标签: mysql

调试某些代码时,我发现其中一个查询导致mysql的临时表耗尽内存。我发现查询正在执行,即使'ON'条件没有等于匹配字段。我想知道......

这实际上会做什么,因为这似乎会导致可怕的性能滞后?

(我运行了似乎没有帮助的解释命令)

作为一个非常基本的例子,它看起来像这个查询:

"SELECT testfield
FROM foo f
LEFT JOIN bar b ON b.testid 
WHERE testid = 40365";

1 个答案:

答案 0 :(得分:1)

这是因为您在条件为TRUE时加入,这意味着此操作有点像笛卡尔产品。

我猜你的桌子足够大,导致这个记忆问题。