⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_66701.htm

📁 vc
💻 HTM
字号:
<p>
序号:66701 发表者:zhao99 发表日期:2003-12-25 22:16:29
<br>主题:求教一SQL
<br>内容:四个表:这个SQL是不是最好的。大家看一下:<BR><BR>SELECT a.cer_steam_id ,a.work_department_id,a.grade,d.name,a.pe_stream_id,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b.person_name,b.phone,b.technical_name,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c.duty,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a.memo FROM<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_sdjsj_xpk_certificateinfo a,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_sdjsj_personinfo b,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_project_person_rel c,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_code_target_type d<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHERE a.cer_steam_id IN('1','2','3','4','5','6','7')<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AND a.pe_stream_id=b.pe_stream_id(+)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AND a.pe_stream_id=c.person_id(+)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AND a.target_type_id=d.code(+)<BR><BR>表结构就不说了,解释一下(+)的用途,那里能找到资料★?<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:zhao99 回复日期:2003-12-25 22:19:32
<br>内容:a表中有个pe_stream_id在b表中是主键,c表中用他也可以找到duty字段。关键是b/c有没有都要找,没有就返回空的。<BR>有没什么改进方法。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:LOVEYUAN 回复日期:2003-12-26 12:59:02
<br>内容:(+)是外联接呀。<BR>就是说,如果用a表的pe_stream_id和b表的pe_stream_id关联,<BR>如果在b表找不到数据,那么查询结果中,<BR>b.person_name,b.phone,b.technical_name,这几个字段的值都是NULL.<BR><BR>c表和d表的情况类似。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhao99 回复日期:2003-12-26 14:43:51
<br>内容:楼上果然厉害,关键是我不知道:外联接这个概念,只知道产生这个效果。看了茅塞顿开。<BR>拜你为师就好了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhao99 回复日期:2003-12-26 14:44:54
<br>内容:用外联接提高表连接的查询速度<BR>在作表连接(常用于视图)时,常使用以下方法来查询数据:<BR>SELECT PAY_NO. PROJECT_NAME<BR>FROM A<BR>WHERE A.PAY_NO NOT IN <BR>(SELECT PAY_NO<BR>FROM B WHERE VALUE &gt;= 120000);<BR>但是若表A有10000条记录,表B有10000条记录,则要用掉30分钟才能查完,主要因为NOT IN 要进行一条一条的比较,共需要10000*10000次比较后,才能得到结果。该用外联接后,可以缩短到一分左右的时间:<BR>SELECT PAY_NO,PROJECT_NAME<BR>FROM A,B<BR>WHERE A.PAY_NO=B.PAY_NO(+)<BR>AND B.PAY_NO IS NULL<BR>AND B.VALUE &gt;= 12000;
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhao99 回复日期:2003-12-26 14:48:06
<br>内容:请 LOVEYUAN 推荐两本数据库编程的书:有一个oracle的。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:LOVEYUAN 回复日期:2003-12-26 18:32:17
<br>内容:OCP认证的书不错<BR>考试号 1Z0-001<BR>书名:《Introduction to Oracle: SQL and PL/SQL》
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -