这是查询如何重写这个嵌套查询?
SELECT * FROM table1
WHERE var_c IN(
SELECT var_a FROM table2
WHERE var_b =55554444
);
的语法相当于这个?
SELECT table1.* FROM table1, table2
WHERE (table2.var_a=table1.var_c AND table2.var_b=55554444);
第一个需要约7-8秒运行,第二个约需0.75秒运行。当我使用Join语句时,大约需要4-5秒才能运行。
也就是这个
DELETE FROM table1
WHERE var_c IN(
SELECT var_a FROM table2
WHERE var_b =55554444
);
的语法和这样的:
DELETE table1.* FROM table1, table2
WHERE (table2.var_a=table1.var_c AND table2.var_b=55554444);
一样吗?
表格有多少行?哪些数据类型是列?你有什么指数? –
你可以发布2个查询的解释吗? –