Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
左连接Vs子查询Mysql_Mysql_Subquery_Left Join - Fatal编程技术网

左连接Vs子查询Mysql

左连接Vs子查询Mysql,mysql,subquery,left-join,Mysql,Subquery,Left Join,对不起,英语不好 我有两个类似的问题 (一) 还有一个问题 (二) 上面两个查询中哪一个更快?为什么 感谢您给我时间。我没有详细阅读您的查询,但一般来说,第二个查询的结构更好。使用解释选择…查看差异。您是否查看了这两个查询的解释?使用主键连接应该是有效的。 select t1.id,case when t2.p_id IS NULL then 'Text' ELSE (select t3.data from t3 where t3.p_id = t2.p_id) END FROM t1,t2 W

对不起,英语不好

我有两个类似的问题

(一)

还有一个问题

(二)

上面两个查询中哪一个更快?为什么


感谢您给我时间。

我没有详细阅读您的查询,但一般来说,第二个查询的结构更好。

使用
解释选择…
查看差异。您是否查看了这两个查询的
解释
?使用主键连接应该是有效的。
select t1.id,case when t2.p_id IS NULL then 'Text' ELSE (select t3.data from t3 where t3.p_id = t2.p_id) END FROM t1,t2
WHERE t2.id = t1.id
select t1.id, t3.data 
FROM t1,t2 left join t3 on t3.p_id = t2.p_id WHERE t2.id = t1.id