| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 626 人关注过本帖
标题:今天无聊问问select 关联查询与子查询的区别与优缺点?
只看楼主 加入收藏
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
结帖率:98.98%
收藏
已结贴  问题点数:10 回复次数:4 
今天无聊问问select 关联查询与子查询的区别与优缺点?
首先,我很少用关联查询,什么内联,外联,左联等等,很少少用,甚至说没用过。
我以前都在VFP中操作表的,很少用到这些,有时候,遇到复杂的,最多就是查询出1个中间表来过渡,比如:
select gz,bh,xm,bm from 表2 where bh in (select bh 表1 where rq>=date()) into curs gzb
好像上面的查询可以改为
select t1.bh,gz,xm,bm from 表2 t1,(select t2.bh 表1 where rq>=date()) t2 where t1.bh=t2.bh in  into curs gzb
还可以用内联,外联,左联等,但我没用过,就不知道怎么写了。。

我想问的是,什么时候用内联,外联,左联,子查询,,,,,,有什么规律,各自的优缺点,速度方面,还有就是写查询的难道方面
2015-09-14 12:04
kinvanhon
Rank: 5Rank: 5
来 自:战争学院
等 级:贵宾
威 望:16
帖 子:99
专家分:258
注 册:2014-10-7
收藏
得分:4 
select t1.bh,gz,xm,bm from 表2 t1 join 表1 t2 on t1.bh=t2.bh where t2.rq>=date() into cursor gzb
什么时候用看你想怎么取数据呗
2015-09-14 12:29
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
TO 2楼,
select t1.bh,gz,xm,bm from 表2 t1 join 表1 t2 on t1.bh=t2.bh where t2.rq>=date() into cursor gzb
的速度比
select t1.bh,gz,xm,bm from 表2 t1,(select t2.bh 表1 where rq>=date()) t2 where t1.bh=t2.bh in  into curs gzb
快?要是2个表的数据量都在10W条以上的时候,究竟是用子查询还是用关联快?
2015-09-14 13:36
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:6 
楼主:你用生成中间表的方法进行两次查询,其实就是把子查询拆分的一种方法。向中间表查询的命令与生成中间表的命令合成起来就是子查询;联接查询一般用于生成跨两个或以上数量表文件字段结果表的情况下。比如:T1的字段有F1、F2、F3,T2的字段有F1、F5、F6,想要生成一个包含F1、F2、F6字段的结果表,就需要利用字段F1进行关联后再查询,输出结果表。这里的两个F1字段并不是指名字完全一样的两个字段,而是指表示同一意义的两个字段。还有一种情况也需要用到联接查询,就是自连接查询,也就是联接的双方是同一个表文件,通常用在这个表文件需要比对自己内部字段的情况。比如:T3表中有两个字段,字段1里面是比赛队伍的名字,字段2里是上一届比赛的名次,现在要求生成一个本届比赛的对阵表,对阵双方的上届名次相差3位以上的。这种查询就需要T3表进行自连接去比对上届名次字段。
2015-09-15 14:42
ILoveVFD
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:218
专家分:147
注 册:2015-5-2
收藏
得分:0 
进来学习一下,自己对这个也不懂。
2015-12-09 21:38
快速回复:今天无聊问问select 关联查询与子查询的区别与优缺点?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024846 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved