【升星+散分】SQL SERVER选择字段时,前面加表名与不加表名的效率问题

特别 2010-11-17 09:59:19
这个问题我知道应该在SQL SERVER版块问。
但我主要目的是散分庆祝一下。。。。。


假设有两个表
A(a_id,a_name,a_birthday)

B(b_id,b_aid,b_address)

两表联查的语句,

select a_id,a_name,b_address
from a
inner join b on a_id=b_aid

或者在字段前加上表名

select a.a_id,a.a_name,b.b_address
from a
inner join b on a.a_id=b.b_aid


这两种查询方法,按我理解第二种应该效率好些,
因为这个时候引擎不需要在表系统表中查找某个字段应该是哪个表的了
如果没有明确指定字段所属表名,引擎应该要通过查找系统表确定是哪个表的字段

不知道这样理解是否正确?

...全文
300 55 打赏 收藏 转发到动态 举报
写回复
用AI写文章
55 条回复
切换为时间正序
请发表友善的回复…
发表回复
shichao102471077 2010-11-17
  • 打赏
  • 举报
回复
这个数据少的时候好像一样,不知道多的效果。。至于要不要代表名吧。。可以这样理解。如果a表中有id
b表中有id
如果你写这样的的话会出错
select id,id,from a inner jion b on id=id;
必须这么写
select a.id,b.id from a inner jion b on a.id=b.id

我的理解主要是区分
DataBox-MDX 2010-11-17
  • 打赏
  • 举报
回复
对于大数据量还是有区别的。
如下
select a_id,a_name,b_address
from a
inner join b on a_id=b_aid
执行这条语句时,对于要查询字段a_id,a_name,b_address,依次到两个表中找,如果找都就立即返回
而对于:
select a.a_id,a.a_name,b.b_address
from a
inner join b on a.a_id=b.b_aid
对于要选择字段:a.a_id,a.a_name就直接到a表中找,b.b_address就直接到b表中找
maiker110 2010-11-17
  • 打赏
  • 举报
回复
恭喜,接分,应该是第二个效率略高一点
为乐而来 2010-11-17
  • 打赏
  • 举报
回复
速度是一样的。。
nice_dream_li 2010-11-17
  • 打赏
  • 举报
回复
应该是一样的吧
恭喜楼主
akonlaogong 2010-11-17
  • 打赏
  • 举报
回复
顶上!gxgx,呵呵
huwen7565833 2010-11-17
  • 打赏
  • 举报
回复
测试一下效果啊!当然要数据很大的情况才能看出差别!
谎言 2010-11-17
  • 打赏
  • 举报
回复
恭喜LZ升星了啊... 不知我啥时候才有一个星!
huwen7565833 2010-11-17
  • 打赏
  • 举报
回复
devin_jia 2010-11-17
  • 打赏
  • 举报
回复
xf_taoran 2010-11-17
  • 打赏
  • 举报
回复
colorall 2010-11-17
  • 打赏
  • 举报
回复
理论想法是对的
实际看不出效果的
fellowcheng 2010-11-17
  • 打赏
  • 举报
回复
恭喜
hookyzlr 2010-11-17
  • 打赏
  • 举报
回复
先恭喜楼主。。。。至于效率个人感觉没区别,写法不同而已。
subxli 2010-11-17
  • 打赏
  • 举报
回复
GX ...
whrspsoft3723 2010-11-17
  • 打赏
  • 举报
回复
没有什么区别吧,就象System.Forms.Button 和 Button的区别一样。
flyerwing 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 wuyazhe 的回复:]
只是写法不同而已。效率一样。
[/Quote]
应该是吧,一个库充其量也就几百个表,应该是体会不出来的
wangli820 2010-11-17
  • 打赏
  • 举报
回复
赞同楼主的
xuzysun 2010-11-17
  • 打赏
  • 举报
回复
加上表名可在不同表之间有相同名称字段进行区分。
jiangshun 2010-11-17
  • 打赏
  • 举报
回复
两个一样的
加载更多回复(26)

110,545

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧