多表查询总共三种方式,实践中来看,左连接使用最多

简介: from table1, table2 where table1.col=table2.col慎用第一种,对于数据量大的来说,是先查询所有的表在查询后面的条件,相当于n*nleft join 会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。

from table1, table2 where table1.col=table2.col

慎用第一种,对于数据量大的来说,是先查询所有的表在查询后面的条件,相当于n*n

left join 会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。

左连接,

from table1 where table1.uid in (select … from table2)

在过去ssm系统中常使用改语句


实践中来看,左连接使用最多,可以优先考虑用左连接,并且左连接的查询效率更高

        select brand_name, logo_url, category_tags_l2_name, join_total_cost
        from join_brand_hot h left join join_brand b on h.brand_code = b.brand_code
        where h.status = 1
        <if test="today != null" >
            and (show_end_time is null or show_end_time &gt;= #{today})
        </if>
        order by sort desc, click_count desc
相关文章
|
28天前
|
关系型数据库 MySQL 索引
mysql查询中内连接和左连接有什么区别
mysql查询中内连接和左连接有什么区别
15 0
|
SQL 关系型数据库 MySQL
MySql 别犯糊涂了! LEFT JOIN 的 ON 后接上筛选条件,多个条件会出事!
MySql 别犯糊涂了! LEFT JOIN 的 ON 后接上筛选条件,多个条件会出事!
1857 0
MySql 别犯糊涂了! LEFT JOIN 的 ON 后接上筛选条件,多个条件会出事!
|
7天前
|
SQL 关系型数据库 MySQL
【MySQL-8】DQL-查询语句全解 [ 基础/条件/分组/排序/分页查询 ](附带代码演示&案例练习)
【MySQL-8】DQL-查询语句全解 [ 基础/条件/分组/排序/分页查询 ](附带代码演示&案例练习)
|
数据库
子查询与内连接查询区别(效率上,连接查询高于子查询)、左连接以及连接的原理,还有内连接与左连接的区别
子查询与内连接查询区别(效率上,连接查询高于子查询)、左连接以及连接的原理,还有内连接与左连接的区别
1047 0
子查询与内连接查询区别(效率上,连接查询高于子查询)、左连接以及连接的原理,还有内连接与左连接的区别
|
关系型数据库 MySQL 数据库
MySql基础-笔记6 -排序、分组、连接的使用、NULL值处理
MySql基础-笔记6 -排序、分组、连接的使用、NULL值处理
166 0
MySql基础-笔记6 -排序、分组、连接的使用、NULL值处理
|
SQL 存储 NoSQL
软件测试|数据库的内连接,左连接,右链接分别是什么
软件测试|数据库的内连接,左连接,右链接分别是什么
154 0
软件测试|数据库的内连接,左连接,右链接分别是什么
|
SQL 搜索推荐 关系型数据库
B+树索引使用(8)排序使用及其注意事项(二十)
B+树索引使用(8)排序使用及其注意事项(二十)
|
SQL 关系型数据库 MySQL
mysql使用 from两表查询与join两表查询区别
在mysql中,多表连接查询是很常见的需求,在使用多表查询时,可以from多个表,也可以使用join连接连个表这两种查询有什么区别?哪种查询的效率更高呢? 带着这些疑问,决定动手试试1.先在本地的mysql上先建两个表one和twoone表 CREATE TABLE `one` ( `id`.
5132 0