1
我有一個數據庫,我正在嘗試獲取名稱旁邊的項目總借用名單。MYSQL TotalValue當另一列有一個設定值
目前我需要的所有數據都可以在下面的查詢中查看。
SELECT *
FROM Borrower b
JOIN Loan l ON b.BorId = l.BorId
JOIN BookCopy bc ON l.BcId = bc.BcId
JOIN BookTitle bt ON bc.BtId = bt.BtId
在這一天結束時,我想b.BorName柱,並bt.Value的每個另一列借款的總和。
上面的表格顯示了每個BorName的多行,因爲每個人都有多個借用的項目,但是我希望藉助所有相關的bt.value字段在另一列中的總和減少到每個借用者一行。
我曾嘗試選擇以下
SELECT b.BorName, SUM(DISTINCT bt.Value) as Total
FROM Borrower b
JOIN Loan l ON b.BorId = l.BorId
JOIN BookCopy bc ON l.BcId = bc.BcId
JOIN BookTitle bt ON bc.BtId = bt.BtId
但是,這只是返回一個單獨的行,與他們的總價值查詢中的第借款人。
我已經達到了當前MYSQL知識的極限,並試圖進一步查看GROUP BY,例如, SUM和子查詢,但無法解決我的意圖。
如果我當時就想這個限制在「合計」值> 10? 我已經嘗試了一個簡單的WHERE之前和之後GROUP BY引用Total或SUM(bt.Value),但都沒有工作。 – 2012-04-02 22:21:48
對於其他人這個鏈接將幫助http://codespatter.com/2008/07/22/conditions-on-count-or-sum-in-mysql/ 您正在尋找的詞是HAVING – 2012-04-02 22:32:31
@ mr.user1065741是的,你需要使用'HAVING' – 2012-04-02 22:41:15