mysql两种多表查询的区别?
为情所困
为情所困 2017-05-18 10:44:43
0
1
549

SQL 1:

SELECT
    a.*,
    b.name
FROM
    t_coach a
LEFT JOIN t_school b on a.school_id=b.id

SQL 2:

SELECT a.*, (select b.name FROM t_school b WHERE b.id= a.school_id) AS name  FROM t_coach a

SQL1和SQL2得到结果是一样的。

在实际开发中第二种SQL 可以这样写吗?
相对于SQL1 ,SQL2的效率是不是低?

为情所困
为情所困

全部回复(1)
phpcn_u1582

SQL1,B表只扫描一遍
SQL2,A表有多少条记录,B表就被扫描多少遍
当你数据库的数据量足够到,SQL2直接出不来结果,会把数据库搞死

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!