2015-03-24 32 views
-1

如何在MS Access 2010數據庫中編寫以下SELECT查詢?SELECT DISTINCT查詢與每個不同的其他字段的數字總計

現在的情況是:學校裏的孩子因爲不良行爲而被拘留。有些父母有很多孩子。 我怎樣才能得到父母所有孩子都得到的拘留總數?

這裏是數據結構:BadParentsTable具有字段ChildNameParentNameNumberOfDetentions。 ChildName和ParentName是文本數據類型。 NumberOfDetentions是數字數據類型。示例數據看起來像;因此

ChildName  ParentName NumberOfDetentions 
Sally   GeorgeP  12 
Fred   SamL   2 
Sue   GeorgeP  5 
Joe   SamL   10 

結果應該是:

GeorgeP 17 
SamL  12 

假設每個孩子只有一個父。

我想我會嘗試SELECT DISTINCT ParentName FROM BadParentsTable,但我該如何編寫SQL來獲得每個父母的NumberOfDetentions的總和?

我正在從Java使用JDBC本機查詢,所以它看起來更像:ResultSet rs = s.executeQuery("SELECT DISTINCT ParentName FROM BadParentsTable");

回答

3

您正在尋找GROUP BY

SELECT 
    ParentName, 
    SUM(NumberOfDetentions) AS TotalDetentions 
FROM test_table 
GROUP BY ParentName 

Here's a SQLFiddle(在MySQL,但是這是非常簡單的SQL)

+0

謝謝你和+1。因爲你回答了這個問題,所以我將其標記爲答案。但是,您是否足夠顯示'ORDER BY TotalDetentions DESC'和'WHERE TotalDetentions> 15'的其他變體?我不知道按照什麼順序放置額外的術語。 – CodeMed 2015-03-24 22:26:17

+0

這些答案可能更具體一些MySQL或TSQL,我很少使用MS Access。希望這會讓你朝着正確的方向前進:http://sqlfiddle.com/#!9/1f25c/5祝你好運! – 2015-03-24 22:36:41

相關問題