嘿! 我的確有一個關於SQL的問題。有沒有辦法來總結紅色標記的值?所以例如AAG不會分爲2列,而是合併爲一列。所以AAG 2和AAG 4成爲一個單行AAG 6
幫助表示讚賞:) 有一個愉快的一天
嘿! 我的確有一個關於SQL的問題。有沒有辦法來總結紅色標記的值?所以例如AAG不會分爲2列,而是合併爲一列。所以AAG 2和AAG 4成爲一個單行AAG 6
幫助表示讚賞:) 有一個愉快的一天
這將做到這一點:
您需要使用SUM()
SELECT t.TEILEID
, SUM(t.BESTAND - t.RESERVIERT)
FROM TEILE t
INNER JOIN AUFTRAGSPOSDS a ON a.TEILEID = t.TEILEID
WHERE a.AUFTRNR = 15
GROUP BY t.TEILEID;
閱讀您的意見,我認爲當你需要這個:
SELECT t.TEILEID
, SUM(t.BESTAND - t.RESERVIERT)
FROM TEILE t
WHERE t.TEILEID IN
(SELECT a.TEILEID
FROM AUFTRAGSPOSDS a
WHERE a.AUFTRNR = 15)
GROUP BY t.TEILEID;
嘿,是的,我試過了,但它顯示12爲AAG,這顯然是錯誤的。它應該是6.我真的不知道爲什麼它這樣做。任何想法? – user2669261
@ user2669261在表AUFTRAGSPOSDS您可能有兩個記錄對應於TEILE中的每條記錄 –
@ user2669261查看我的更新回答 –
當然這是可能的:
select t.TEILEID, SUM(t.BESTAND - t.RESERVIERT) from ...
GROUP BY t.TEILEID
嘿,是的,我試過了,但它顯示12爲AAG,這顯然是錯誤的。它應該是6.我真的不知道爲什麼它這樣做。任何想法? – user2669261
只需使用'sum' ...... – sgeddes
刪除您'集團BY'的第二部分。只用't.TEILEID'分組。 –
嘿,是的,我嘗試了總和,但它顯示AAG爲12,這顯然是錯誤的。它應該是6.我真的不知道爲什麼它這樣做。任何想法?另外,我不能刪除我的組的第二部分,因爲它會引發錯誤。 – user2669261