2014-01-17 8 views
-1

diff 제품 카테고리에서 각 고객에 대한 매출 합계의 분산을 계산하고 싶습니다. 아래는 예제입니다. 오류가 발생했습니다. 단계적으로 어떻게 할 수 있는지에 대해 도와주세요.중첩 된 SQL 쿼리를 사용하여 차이를 계산하십시오.

AB - 고객 기원전 - 제품 카테고리 BD - 양

data a; 
input ab$ bc$ bd; 
datalines; 
a x 5 
a x 6 
a y 9 
a y 6 
a y 5 
a z 9 
a z 8 
b z 6 
b z 9 
b y 8 
b y 6 
b x 6 
b x 6 
b x 7 
b z 8 
b z 9 

;

run; 

proc sql; 
    create table b as select ab , var (sum_bd) from(
    from (select ab, bc, sum(bd) as sum_bd from a group by ab, bc)) 
    group by ab; 
run; 
+0

어떤 오류가 발생 했습니까? – Jim

+0

어디에서 오류가 있습니까? – LionC

+0

ERROR 79-322 : a) 예상. 오류 22-322 : 구문 오류. 다음 중 하나가 예상됩니다.), ',', ANSIMISS, CROSS, FULL, INNER, JOIN, LEFT, NATURAL, NOMISS, RIGHT. 오류 76-322 : 구문 오류, 문이 무시됩니다. – maverick

답변

0

두 개의 from 절이 있습니다. 이 구문 올바른 버전을 시도해보십시오

proc sql; 
    create table b as 
     select ab, var(sum_bd) 
     from (select ab, bc, sum(bd) as sum_bd 
       from a 
       group by ab, bc 
      ) a 
     group by ab; 
run; 
0

은 MySQL은 더 VAR 기능이 없어, 그것은 VAR_POP 또는 VAR_SAMP입니다.

+0

sas에서 proc sql을 사용하고 있습니다. var이 유효한 함수 인 것 같습니다. – maverick

관련 문제