2013-07-18 2 views
0

내 쿼리는 "WeightFactor"라는 추가 필드를 테이블 끝에 추가하도록 설계되었습니다. 내 SQL 코드는 아래와 같습니다. 실행을 시도 할 때 "누락 된 운영자 오류"가 나타납니다. 이전 질문에서 OVER()는 구문 적으로 올바른 진술임을 알 수 있습니다. rowprice/totalprice를 사용하고 있기 때문에 "WeightFactor"필드는 100 %의 작은 비율이어야합니다. OVER 절을 제거하면 오류가 사라지지만 결과는 각 행에 100 %의 올바른 백분율 대신 각 행에 100 %를 표시하는 것입니다.Access 2007, OVER 절 대안 - 누락 된 연산자 오류

OVER는 Access에서 지원되지 않으므로 사실인지 궁금한가요? 그렇다면 누군가가 알고있는 해결 방법이 있습니까?

SELECT [2-C: Avg Prices by Customer Number Query].[Part Number], 
    [2-C: Avg Prices by Customer Number Query].[Customer Name], 
    [2-C: Avg Prices by Customer Number Query].[Customer Number], 
    [2-C: Avg Prices by Customer Number Query].SumOfQuantity, 
    [2-C: Avg Prices by Customer Number Query].TotalCost, 
    [2-C: Avg Prices by Customer Number Query].TotalPrice, 
    [2-C: Avg Prices by Customer Number Query].[Gross Margin], 
    [TotalPrice]/SUM([TotalPrice]) OVER() AS WeightFactor 
FROM [2-C: Avg Prices by Customer Number Query] 

답변

1

왜 모든 항목의 합계를 계산할 두 번째 쿼리를 만들지 않습니까?

'OriginalQuery 
SELECT [2-C: Avg Prices by Customer Number Query].TotalPrice, 
[TotalPrice]/[TotalPriceOver] AS WeightFactor 
FROM [2-C: Avg Prices by Customer Number Query], TotalQuery; 
+0

내가가는 끝난 방법 :

'TotalQuery SELECT SUM([2-C: Avg Prices by Customer Number Query].TotalPrice) AS TotalPriceOver FROM [2-C: Avg Prices by Customer Number Query]; 

그럼 당신은 원래 쿼리에서이 하나를 사용할 수 있습니다. 감사! –