首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

两种查询方法有何区别解决方案

2012-01-30 
两种查询方法有何区别第一种也是我常用的,利用两表的连接来取得字段select a.id,a.pid,b.name from ajoin

两种查询方法有何区别
第一种也是我常用的,利用两表的连接来取得字段
select a.id,a.pid,b.name from a
join b on a.pid=b.id

第二种
select a.id,a.pid,
(select name from b where a.pid=b.id) as name 
from a

不知道两种方式各有什么优缺点?
谢谢






[解决办法]
第一种效率要高一些,
对于第二种,a表有多少条记录就要扫描b表多少次。
[解决办法]
执 行 计 划 显 示 第一 种效 率 高 ,但 实 际 操 作 时 ,有 时 候 第 二 种 快 .原 因 没 有 分 析 过. 总 之 具 体 问 题 具 体 分 析 .
[解决办法]
第一种两表可以是一对多,多对多,一对一的;属于内联接,相对来说效率比第二个高
第二种两表必须是一对一的;属子查询
[解决办法]
可能你的两个表的字段比较多,当链接时占用内存更大

热点排行