Item 6 of 63 Mark item for review Item 6 of 63 Mark item for review Item 6 of 63 Mark item for review Item 6 of 63 Mark item for review
The table WORK.PILOTS contains the following data:
WORK.PILOTS
Id Name Jobcode Salary
--- ------ ------- ------
001 Albert PT1 50000
002 Brenda PT1 70000
003 Carl PT1 60000
004 Donna PT2 80000
005 Edward PT2 90000
006 Flora PT3 100000
The data set was summarized to include average
salary based on jobcode:
Jobcode Salary Avg
------- ------ -----
PT1 50000 60000
PT1 70000 60000
PT1 60000 60000
PT2 80000 85000
PT2 90000 85000
PT3 100000 100000
Which SQL statement could NOT generate
this result?
A.
select
Jobcode,
Salary,
avg(Salary) label='Avg'
from WORK.PILOTS
group by Jobcode
order by Id
;
B.
select
Jobcode,
Salary,
(select avg(Salary)
from WORK.PILOTS as P1
where P1.Jobcode=P2.Jobcode) as Avg
from WORK.PILOTS as P2
order by Id
;
C.
select
Jobcode,
Salary,
(select avg(Salary)
from WORK.PILOTS
group by Jobcode) as Avg
from WORK.PILOTS
order by Id
;
D.
select
Jobcode,
Salary,
Avg
from
WORK.PILOTS,
(select
Jobcode as Jc,
avg(Salary) as Avg
from WORK.PILOTS
group by 1)
where Jobcode=Jc
order by Id
;
我在SAS9.2上得到的结果是:
A,成功。
B,没结果但信息提示NOTE: The query as specified involves ordering by an item that doesn't appear in its SELECT clause.。
C,ERROR: Subquery evaluated to more than one row.
D,ERROR: Ambiguous reference, column Avg is in more than one table.
到底哪个是正确答案呢?为什么?
----------------------------------------------------------------------
Item 50 of 63 Mark item for review Item 50 of 63 Mark item for review Item 50 of 63 Mark item for review Item 50 of 63 Mark item for review
The table WORK.PILOTS contains the following data:
Id Name Jobcode Salary
--- ------ ------- ------
001 Albert PT1 50000
002 Brenda PT1 70000
003 Carl PT1 60000
004 Donna PT2 80000
005 Edward PT2 90000
006 Flora PT3 100000
A query was constructed to display the pilot salary
means at each level of Jobcode and the difference to
the overall mean salary:
Jobcode Average Difference
------------------------------
PT1 60000 -15000
PT2 85000 10000
PT3 100000 25000
Which select statement could NOT have
produced this output?
A.
select
Jobcode,
avg(Salary) as Average,
calculated Average - Overall as difference
from
WORK.PILOTS,
(select avg(Salary) as Overall from WORK.PILOTS)
group by jobcode
;
B.
select
Jobcode,
avg(Salary) as Average,
(select avg(Salary) from WORK.PILOTS) as Overall, as…from
calculated Average - Overall as Difference
from WORK.PILOTS
group by 1
;
C.
select
Jobcode,
Average,
Average-Overall as Difference
from
(select Jobcode, avg(Salary) as Average
from WORK.PILOTS
group by 1),
(select avg(Salary) as Overall
from WORK.PILOTS)
;
D.
select
Jobcode,
avg(Salary) as Average,
calculated Average-(select avg(Salary) from WORK.PILOTS)
as Difference
from WORK.PILOTS
group by 1
;
这道题和Q6很象。我在SAS9.2上得到的结果是:
A,成功。
B,ERROR: The following columns were not found in the contributing tables: Overall。
C,没结果但信息提示NOTE: The execution of this query involves performing one or more Cartesian product joins that can not be optimized.
D,成功。
到底哪个是正确答案呢?为什么?
----------------------------------------------------------------------
Item 23 of 63 Mark item for review Item 23 of 63 Mark item for review Item 23 of 63 Mark item for review Item 23 of 63 Mark item for review
Given the SAS data set SASUSER.HIGHWAY:
Steering Seatbelt Speed Status Count
-------- -------- ----- ------- -----
absent No 0-29 serious 31
absent No 0-29 not 1419
absent No 30-49 serious 191
absent no 30-49 not 2004
absent no 50+ serious 216
The following SAS program is submitted:
%macro SPLIT;
proc sort
data=SASUSER.HIGHWAY
out=WORK.UNIQUES(keep=Status)
nodupkey;
by Status;
run;
data _null_;
set uniques end=Lastobs;
call symputx('Status'||left(_n_),Status);
if Lastobs then call symputx('Count',_n_);
run;
%local i;
data
%do i=1 %to &count;
[_insert_reference_]
%end;
;
set SASUSER.HIGHWAY;
select(Status);
%do i=1 %to &Count;
when("[_insert_reference_]") output [_insert_reference_];
%end;
otherwise;
end;
run;
%mend;
%SPLIT
What macro variable reference completes
the program to create the WORK.NOT and
WORK.SERIOUS data sets?
A.
&Status&i
B.
&&Status&i
C.
&Status&Count
D.
&&Status&Count
完全看不懂题。谁能给讲解一下?
----------------------------------------------------------------------
Item 39 of 63 Mark item for review Item 39 of 63 Mark item for review Item 39 of 63 Mark item for review Item 39 of 63 Mark item for review
The following SAS program is submitted:
%let Mv=shoes;
%macro PRODUCT(Mv=bicycles);
%let Mv=clothes;
%mend;
%PRODUCT(Mv=tents)
%put Mv is &Mv;
What is written to the SAS log?
A.
Mv is bicycles
B.
Mv is clothes
C.
Mv is shoes
D.
Mv is tents
这题也不懂,但觉得和global symbol table and local symbol table 有关。谁能帮忙捅破这层儿窗户纸啊?
----------------------------------------------------------------------
Item 21 of 63 Mark item for review Item 21 of 63 Mark item for review Item 21 of 63 Mark item for review Item 21 of 63 Mark item for review
The following SAS program is submitted:
data WORK.NEW;
do i=1, 2, 3;
Next=cats('March' || i );
infile XYZ
filevar=Next
end=Eof;
do until (Eof);
input Dept $ Sales;
end;
end;
run;
The purpose of the FILEVAR=option on the
INFILE statement is to name the variable
Next, whose value:
A.
points to a new input file.
B.
is output to the SAS data set WORK.NEW.
C.
is an input SAS data set reference.
D.
points to an aggregate storage location.
答案A和C那个对?为什么?