2016-06-20 3 views
0

원시 SQL 쿼리를 Access의 SQL보기에 붙여 넣을 때 오류가 발생합니다. 나는 Access 구문이 약간 특별하지만 그것이 무엇을 요구 하는지를 알 수 없다는 것을 안다. 오류 : Syntax error (missing operator) in query expression '(jobmatl.suffix = job.suffix) AND (job.job = jobmatl.job) INNER ...................... AS ibl ON jobmatl.item = ibl.item AND job.whse = ibl.whse. 오류는 내가 작성한 것 사이의 모든 것을 언급합니다.MS 액세스 : SQL보기 오류

SELECT 

    job.job, 
    job.suffix, 
    job.job_date, 
    job.item AS FG, 
    jobmatl.item, 
    job.whse, 
    ibl.sumofqtyonhand, 
    ibl.whse 

FROM 

    job 
    INNER JOIN jobmatl ON (jobmatl.suffix = job.suffix) AND (job.job = jobmatl.job) 
    INNER JOIN (

     (SELECT 

      i.item, 
      SUM(i.qty_on_hand) AS sumofqtyonhand, 
      i.whse 

     FROM 

      Item_by_Location_LP_ALL AS i 

     WHERE 

      i.hold_flag != 1 

     GROUP BY 

      i.item, 
      i.whse 

     )) AS ibl ON jobmatl.item = ibl.item AND job.whse = ibl.whse 

WHERE 

    (((job.job_date)=Date()-(DatePart("w",Date(),2,1)-1))); 
+1

통과 쿼리를 사용할 수 있으며이 방법이 효과적입니다. 내가 볼 수있는 유일한 눈부신 것은 액세스 권한이 여야합니다. –

+0

좋은 전화 @random_answer_guy – whatwhatwhat

답변

1

FROM는 MS 액세스를 위해 다음과 같아야합니다

FROM (job INNER JOIN 
     jobmatl 
     ON jobmatl.suffix = job.suffix AND job.job = jobmatl.job 
    ) INNER JOIN 
    (SELECT i.item, SUM(i.qty_on_hand) AS sumofqtyonhand, i.whse 
     FROM Item_by_Location_LP_ALL AS i 
     WHERE i.hold_flag <> 1 
     GROUP BY i.item, i.whse 
    ) AS ibl 
    ON jobmatl.item = ibl.item AND job.whse = ibl.whse; 

MS 액세스는 각 JOIN에 대한 별도의 괄호가 필요합니다. 또한, 당신은 괄호의 수준까지 - 나는 그것이 허용되는지 모르겠다.

+0

정말 고마워요. – whatwhatwhat