SELECT DISTINCT查询,其中包含每个不同字段的其他字段的数字合计



如何在MS Access 2010数据库中编写以下SELECT查询?

情况是这样的:学校里的孩子因为不良行为而被拘留。有些父母有很多孩子我如何才能得到一份父母名单,其中包含该父母所有孩子被拘留的总数

数据结构如下: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的总和

我使用JDBC从Java运行这个本机查询,所以它实际上更像:ResultSet rs = s.executeQuery("SELECT DISTINCT ParentName FROM BadParentsTable");

您正在寻找GROUP BY:

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

这里有一个SQLFiddle(在MySQL中,但这是非常简单的SQL)

最新更新