SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 914|回复: 0
打印 上一主题 下一主题

跟crackman做sas adv认证试题(2)

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2010-11-15 23:16:09 | 只看该作者

跟crackman做sas adv认证试题(2)

From crackman's blog on Baidu


               
                <p><font size="4" face="宋体">Given the SAS data sets:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
<br>
&nbsp;&nbsp;  WORK.EMPLOYEE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  WORK.NEWEMPLOYEE&nbsp;&nbsp;  <br>
<br>
&nbsp;&nbsp;  Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Dept&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Names&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Salary  <br>
&nbsp;&nbsp;  --------&nbsp;&nbsp;  -----&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  --------&nbsp;&nbsp;  ------  <br>
&nbsp;&nbsp;  Alan&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Sales&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Michelle&nbsp;&nbsp;  50000&nbsp;&nbsp;  <br>
&nbsp;&nbsp;  Michelle&nbsp;&nbsp;  Sales&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Paresh&nbsp;&nbsp;&nbsp;&nbsp;  60000&nbsp;&nbsp;  <br>
<br>
  A SAS program is submitted and<br>
  the following is written to the SAS log:&nbsp;&nbsp;&nbsp;&nbsp;  <br>
<br>
  101  proc sql;<br>
  102&nbsp;&nbsp;&nbsp;  select dept, name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
  103&nbsp;&nbsp;&nbsp;  from WORK.EMPLOYEE&nbsp;&nbsp;&nbsp;&nbsp;  <br>
  104&nbsp;&nbsp;&nbsp;  where name=(select names<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  from newemployee&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  where salary &gt; 40000)&nbsp;&nbsp;&nbsp;&nbsp;  <br>
  ERROR: Subquery evaluated to more than one row. <br>
  105  ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
  106  quit;  <br>
<br>
  What would allow the program to<br>
  successfully execute without errors?&nbsp;&nbsp;  </font></p>
<p><br>
<font size="4" face="宋体">A.Replace the where clause with:&nbsp;&nbsp;&nbsp;  <br>
<br>
where EMPLOYEE.Name=(select Names delimited with ','&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  from WORK.NEWEMPLOYEE<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  where Salary &gt; 40000);&nbsp;&nbsp;&nbsp;&nbsp;  <br>
<br>
B.Replace line 104 with:&nbsp;&nbsp;  <br>
<br>
where EMPLOYEE.Name =ANY (select Names separated with ',' <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  from WORK.NEWEMPLOYEE <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  where Salary &gt; 40000);<br>
C.Replace the equal sign with the IN operator.<br>
<br>
D.Qualify the column names with the table names.&nbsp;&nbsp;&nbsp;&nbsp;  </font></p>
<p><font size="4" face="宋体">答案为C。<br>
本文属于博客:</font><a href="http://hi.baidu.com/crack_man/home"><font size="4" face="宋体"><!-- m --><a class="postlink" href="http://hi.baidu.com/crack_man/home">http://hi.baidu.com/crack_man/home</a><!-- m --></font></a><font size="4" face="宋体"> 版权归作者所有,欢迎转载!如有转载,请务必注明出处!未经本文作者同意不得用于商业应用。<br>
首先分析这个原程序第104行,中where name=(select names from newemployee where salsry&gt;40000)<br>
原程序在执行过程,应先是执行子查询,select names from newemployee where salsry&gt;40000,将返回的结果作为下一个查询的筛选条件。<br>
在这里返回的结果NAMES这个变量包括了两个值Michelle和Paresh,所以在执行过程出现错误。那么应该改成 IN或者ANY。IN ANY指定的是一个匹配范围,而等号必须是一个具体匹配的值。<br>
这里可以思考SEPARATED WITH这个语句,SAS认为是错误。</font></p>
<p> </p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/a524fe077f8ddafc09fa9368.html">阅读全文</a>
               
                <br/><b>类别:</b><a href="http://hi.baidu.com/crack%5Fman/blog/category/%B8%FAcrackman%D7%F6sas%20adv%C8%CF%D6%A4%CA%D4%CC%E2">跟crackman做sas adv认证试题</a>&nbsp;<a href="http://hi.baidu.com/crack%5Fman/blog/item/a524fe077f8ddafc09fa9368.html#comment">查看评论</a>
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-3 16:34 , Processed in 0.121844 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表