社区
MS-SQL Server
帖子详情
高手指点一下!inner join多表关联的时候,表联接的先后顺序对效率有影响吗?
xqlvcc
2007-12-24 01:56:27
RT
...全文
1699
13
打赏
收藏
高手指点一下!inner join多表关联的时候,表联接的先后顺序对效率有影响吗?
RT
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xqlvcc
2007-12-25
打赏
举报
回复
还有人来说说吗?
中国风
2007-12-24
打赏
举报
回复
SQL自身优化为loop循环
--如下面指定,select
*
from
a
inner merge join
b on a.ID=b.ID
---有条件的情况下只能用loop
select
*
from
a
inner loop join
b on a.ID=b.ID and a.ID
----SET SHOWPLAN_TEXT on 显示执行顺序,对效率是没影响的
jlbaowei
2007-12-24
打赏
举报
回复
oracle:选择数据少的表作为基础表,3个表以上时选择交叉表作为基础表。
sqlserver:可以在查询分析器上查看sql语句执行效率来比较。
xqlvcc
2007-12-24
打赏
举报
回复
多表连接时,先后顺序对效率当然有影响?
那是怎么影响方法,是大表先联还是小表先联?是这样的说法吗?
fcuandy
2007-12-24
打赏
举报
回复
多表连接时,先后顺序对效率当然有影响.
优化器会进行优化的.
同时,你也可以在select 时使用 option选项, force order指定以语句顺序连接.
w2jc
2007-12-24
打赏
举报
回复
难得说,要看实际两个表上的索引和统计吧...但是,我觉得应该是对等的。
最好看实际执行计划,那才是最准的。
帮顶,关注
mojie23
2007-12-24
打赏
举报
回复
没试过 你可以将你那个sql执行一下 并将连接的顺序转换转换
看看执行计划中显示的开销 应该可以分析出连接的先后是否有影响吧
xqlvcc
2007-12-24
打赏
举报
回复
?
dawugui
2007-12-24
打赏
举报
回复
高手指点一下!inner join多表关联的时候,表联接的先后顺序对效率有影响吗?
我认为没有.
xqlvcc
2007-12-24
打赏
举报
回复
顶一下!
areswang
2007-12-24
打赏
举报
回复
学习
xqlvcc
2007-12-24
打赏
举报
回复
SQL自身优化? 是一个什么样的策略呢?能否指点一下?
会推荐一点相关资料!谢谢!
中国风
2007-12-24
打赏
举报
回复
SQL自身优化
或指定loop
on和where区别
数据库在通过连接两张或多张
表
来返回记录时,都会生成一张中间的临时
表
,然后再将这张临时
表
返回给用户。 在使用left jion时,on和where条件的区别如下: 1、 on条件是在生成临时
表
时使用的条件,它不管on中的条件是否为真,都会返回左边
表
中的记录。 2、where条件是在临时
表
生成好后,再对临时
表
进行过滤的条件。这时已经没有left
join
的含义(必须返回左边
表
的记录)了,条件不为真的就...
left
join
on 和where条件的放置
select * from td left
join
(select case_id as sup_case_id , count(*) supervise_number from td_kcdc_case_sup_info group by case_id ) sup on sup.sup_case_id = td.case_id where 1=1 /*不能...
SQL中的on、where、having
数据库在通过连接两张或多张
表
来返回记录时,都会生成一张中间的临时
表
,然后再将这张临时
表
返回给用户。 1、on和where条件的区别 在使用left jion时,on和where条件的区别如下: 1、 on条件是在生成临时
表
时使用的条件,它不管on中的条件是否为真,都会返回左边
表
中的记录。 2、where条件是在临时
表
生成好后,再对临时
表
进行过滤的条件。这时已经没有left
join
的含义(必须返回左边
表
的记录)了,条件不为真的就全部过滤掉。 假设有两张
表
两条SQL: 1、select * form ta
on条件与where条件的区别
数据库在通过连接两张或多张
表
来返回记录时,都会生成一张中间的临时
表
,然后再将这张临时
表
返回给用户。 在使用left jion时,on和where条件的区别如下: 1、on条件是在生成临时
表
时使用的条件,它不管on中的条件是否为真,都会返回左边
表
中的记录。 2、where条件是在临时
表
生成好后,再对临时
表
进行过滤的条件。这时已经没有left
join
的含义(必须返回左边
表
的记...
MS-SQL Server
34,875
社区成员
254,639
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章