Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >mysql左连接查询慢[通俗易懂]

mysql左连接查询慢[通俗易懂]

作者头像
全栈程序员站长
发布于 2022-08-31 08:57:15
发布于 2022-08-31 08:57:15
2.9K0
举报

大家好,又见面了,我是你们的朋友全栈君。

之前一直用的Oracle,今天用mysql查询一个很普通的左连接的时候,发现速度很慢。 select x.fid,x.isbirt,x.fscoresum,x.fsystemscore,x.feffectivescore from tablea x left join tableb h on x.fitemid = h.fid where h.fprojectid=’’ 这个sql耗时:

2s多。我有点吓到了,后来我百度后发现

然后我换了表的位置 select x.fid,x.isbirt,x.fscoresum,x.fsystemscore,x.feffectivescore from tableb x left join tablea h on x.fitemid = h.fid where h.fprojectid=’’ 再次查询

只有0.4s了。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143063.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL连接查询&索引介绍
但是MySQL执行的时候,并不是按顺序执行的,MySQL执行sql语句是从from开始执行的,上面这条语句的执行顺序是:
贪挽懒月
2021/04/12
2.5K0
sqlserver 多表联合查询[通俗易懂]
数据库查询时,对单表的查询很难满足需求,通常都需要多表联合查询。多表连接大致分为内连接和外连接。
全栈程序员站长
2022/09/06
2.3K0
MySql优化
官方定义:索引是帮助mysql高效获取数据的数据结构。划重点:数据结构。在数据之外,数据库系统还维护了一套满足特定查找算法的数据结构,这些数据结构以某种方式指向数据,这种数据结构就是索引,可以简单的理解为”排好序的快速查找数据结构”。索引本身也很大,不可能全部存储在内存,通常以索引文件的形式存储在磁盘中。
全栈程序员站长
2022/08/05
7200
MySql优化
图解SQL的Join
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join。我觉得清楚易懂,转过来。
全栈程序员站长
2022/07/19
3600
图解SQL的Join
MySQL连接查询
inner join语法是ANSI SQL的标准规范,使用inner join连接语法能够确保不会忘记连接条件
全栈程序员站长
2022/08/12
5.9K0
MySQL连接查询
Mysql 多表查询详解
上篇讲到Mysql中关键字执行的顺序,只涉及了一张表;实际应用大部分情况下,查询语句都会涉及到多张表格 :
全栈程序员站长
2022/09/04
2.1K0
Mysql 多表查询详解
连接查询和子查询哪个效率高
通过子查询不难看出,可以根据employee_id查到department_id,然后根据deparment_id查到location_id然后查city字段就行了
全栈程序员站长
2022/09/03
4.7K0
连接查询和子查询哪个效率高
MySQL 多表查询、连接查询(内连接、外连接)
查询的结果是一个二维表,它是students表和classes表的“乘积”,即students表的每一行与classes表的每一行都两两拼在一起返回
Michael阿明
2020/07/13
3.9K0
MySQL 多表查询、连接查询(内连接、外连接)
Mysql中外连接,内连接,左连接,右连接的区别
可能第一种通过where语句查询,大家都能理解. 但是不知道大家有没有去尝试过理解下面关于内连接与外连接查询方式的区别 ,接下来我们先通过一张图来演示一下连接的整个层级关系:
萌萌哒的瓤瓤
2021/01/13
4.6K0
Mysql中外连接,内连接,左连接,右连接的区别
Mysql自连接查询「建议收藏」
假想以下场景:某一电商网站想要对站内产品做层级分类,一个类别下面有若干子类,子类下面也会有别的子类。例如数码产品这个类别下面有笔记本,台式机,智能手机等;笔记本,台式机,智能手机又可以按照品牌分类;品牌又可以按照价格分类,等等。也许这些分类会达到一个很深的层次,呈现一种树状的结构。那么这些数据要怎么在数据库中表示呢?我们可以在数据库中创建两个字段来存储id和类别名称,使用第三个字段存储类别的子类或者父类的id,最后通过自连接去查询想要的结果。
全栈程序员站长
2022/06/28
1.5K0
Mysql自连接查询「建议收藏」
mysql左连接 右连接 内连接的区别[通俗易懂]
a表 id name b表 id job parent_id
全栈程序员站长
2022/09/05
2.8K0
左连接 ,右连接,内连接和全外连接的4者区别[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141976.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/01
2.3K0
mysql左连接去重
create table TB_BATCH( ID int(11) not null auto_increment, BATCH_NO VARCHAR(32) comment ‘批次号’, CONTRACT_ID int(11) comment ‘合同ID’, CONTRACT_NO VARCHAR(64) comment ‘合同编号’, RULE_ID int(11) comment ‘规则ID’, CITY VARCHAR(64) comment ‘城市’, COMPANY_NAME VARCHAR(128) comment ‘企业名称’, SERVICE_ADDRESS VARCHAR(128) comment ‘上门地址’, EXP_DATE date comment ‘日期’, EXP_BEGIN_TIME time comment ‘开始时间’, EXP_END_TIME time comment ‘结束时间’, MASSAGIST_COUNT int(4) comment ‘技师数量’, STATUS VARCHAR(16) not null comment ‘状态:待分配、已分配、已确认、服务中、已完成、已取消’, OPERATOR varchar(30), CREATE_TIME datetime, MODIFY_TIME datetime, primary key (ID) );
全栈程序员站长
2022/09/06
1.2K0
mysql左连接去重
笛卡尔积图解[通俗易懂]
在某些情况下用于寻找连续日期中残缺的数据,可以先用笛卡尔积做一个排列组合,然后和目标表进行关联,以查询少了哪些数据。
全栈程序员站长
2022/09/08
2.9K0
笛卡尔积图解[通俗易懂]
mysql左连接查询
左连接查询:以左表为主表,右表为从表,查询符合条件的数据 1.当右表中数据匹配不到时展示为空 例: 左表两条数据,按条件匹配到右表一条数据且匹配左表第一条,结果展示两条数据,且第二条数据右表中的字段全部为null 2.当匹配到右表的数据为多条时,左表数据会重复展示,不会自动合并 例: 左表数据一条,按条件匹配到右表数据三条,结果展示三条数据,左表数据均相同,右表数据不同
全栈程序员站长
2022/09/07
2.7K0
mysql数据库——连接查询(内连接:自然连接,等值连接。外连接:左连接,右连接,全连接)「建议收藏」
由上面两个结果可以看出,等值连接就是从两个表数据的交集中取指定值相等的数据。而自然连接就是取两个表中相同属性,并且值相等的数据,而且消除了相同属性列。
全栈程序员站长
2022/06/27
5.8K0
mysql数据库——连接查询(内连接:自然连接,等值连接。外连接:左连接,右连接,全连接)「建议收藏」
mysql子查询和连接查询(大数据联合计算)
1、交叉连接:CROSS JOIN 把表A和表B的数据进行一个NM的组合,即笛卡尔积。如本例会产生44=16条记录,在开发过程中我们肯定是要过滤数据,所以这种很少用。
全栈程序员站长
2022/07/30
1.6K0
mysql子查询和连接查询(大数据联合计算)
SQL查询左连接、右连接、内连接[通俗易懂]
1、左连接的定义:是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。
全栈程序员站长
2022/07/22
8.1K0
SQL查询左连接、右连接、内连接[通俗易懂]
mysql中左连接查询_mysql左连接「建议收藏」
查询语句开始 会根据 on后面的条件创建一张虚拟表,左边表是全部数据,右边表会根据on后面的条件进行筛选。
全栈程序员站长
2022/08/11
2.5K0
oracle insert 将一张表数据插入另外表中[通俗易懂]
insert into tableA (name,age) select b.studentname, b.age from tableB b where b.id>30
全栈程序员站长
2022/09/09
2.2K0
相关推荐
MySQL连接查询&索引介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档