簡體   English   中英

通過另一個表中的值限制SQL Sum函數?

[英]Limit SQL Sum function by value in another table?

我正在嘗試從特定的銷售代表處獲取客戶余額的總和。 這是我的代碼:

SELECT SUM(CusBalance)
From Customer, Rep
WHERE
Rep.RepFName = 'Tim'
AND
Rep.RepLName = 'Sanchez';

但是,我只是得到每個客戶余額的總和。

我肯定犯了一個簡單的錯誤,但是我是SQL的新手,有點卡住了。 任何幫助,將不勝感激。 順便說一句,我正在Access 2013中執行此操作。

您需要通過共享列(通常是主/外鍵關系)聯接(連接)兩個表。

使用現代的顯式ANSI連接語法(而不是where子句中的隱式連接),查詢將類似於:

SELECT SUM(C.CusBalance) AS "Balance"
FROM Customer C 
INNER JOIN Rep R ON R.RepNum = C.RepNum
WHERE R.RepFName = 'Tim'
  AND R.RepLName = 'Sanchez';

從客戶中選擇SELECT SUM(CusBalance)Rep WHERE Rep.RepFName ='Tim'和Rep.RepLName ='Sanchez'由Rep.id組

我認為如果我沒記錯的話,您正在聯接兩個表,請嘗試看一下聯接,盡管語法可能會因所使用的SQL類型而異,但請嘗試:

SELECT C.SUM(CusBalance)
From Customer as C, Rep as R
WHERE
C.primarykey=R.foreignkey
AND
R.RepFName = 'Tim'
AND
R.RepLName = 'Sanchez';

萬一有人偶然發現此消息,社區會予以回答。 我必須添加加入條件:

WHERE Customer.RepNum = Rep.RepNum

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM