0
我有一個表,用於存儲代理的詳細信息,這看起來如下:SQL連接查詢在MS Access
在另一張表,我有如下所示的稅率信息:
我需要在2張桌子上執行一個查詢,其中顯示代理人的姓名,他們根據納稅檔案支付的稅款總額以及他們的工資,他們的主管的姓名和d主管人員根據納稅標準和他們的工資支付的稅額。查詢的目的是表明,由於稅率的百分比,主管人員支付的稅額要比下屬多得多。
這是迄今爲止我已經制定了查詢:
Select A.AgentName AS AgentName,
((A.Salary)*(Select S.PlusPercentage FROM TaxBracket AS S WHERE A.Salary >=S.FromEarnings AND A.Salary <= S.ToEarnings) + S.BasicTax) AS "Tax Paid By Agent" ,
B.AgentName AS "Supervisor",
((B.Salary)*(Select T.PlusPercentage FROM TaxBracket AS T WHERE A.Salary >=T.FromEarnings AND A.Salary <= T.ToEarnings) + T.BasicTax) AS "Tax Paid By Supervisor" ,
FROM Agent AS 'A', TaxBracket AS 'S', Agent AS 'B', TaxBracket AS 'T'
WHERE A.Supervisor = B.AgentNo
AND A.Commission IS NULL,
ORDER BY A.AgentName DESC
我得到它規定一個錯誤「select語句包含保留字或拼寫錯誤或缺少變量名,或標點符號不正確「。
我不確定這個錯誤發生在哪裏,任何人都可以請幫忙嗎?
跟蹤我的注意力的第一件事是,你引用你的表別名,如'A'。在Access中這是必需的(不知道)。因爲在SQL中,這是行不通的。您是否嘗試過在刪除此引號時有效? – Kevin
@Kevin我不認爲這是必要的,但它在MS Access中是有效的 –
您在SELECT子句中的最後一個字段之後也有一個逗號,...... AS「由主管負責的稅」FROM。再次在SQL中,這是不正確的。我還會在ORDER BY子句前面看到另一個逗號。也許你可以刪除這些並再試一次。 – Kevin