有人可以仔细检查我的 SQL 语句是否正确操作和一般常识方法吗?
这是发生了什么:我有一个具有一对多关系的父表和子表,连接到一个名为 AccountNumberKey 的列上。子表中有数字列,我需要总结一下。
数据使得具有给定 AccountNumberKey 值的所有子记录在它们的两个数字列中始终具有相同的值。我想加入这些表,并为每个 AccountNumberKey 将这两列的总和放入一个临时表中。我只需要对给定每个 AccountNumberKey 的单个子记录中的列求和。
下面的一些示例数据将(我希望)使这一点更清楚:
Parent Table Columns
ParentID InstitutionID AccountNumberKey
1 LocalHost 1873283
2 Acme Brokers 3627389
3 Dewey, Cheatem 1392876
4 NCC1701 8837273
5 Peyton Place 9981273
Child Table Columns
ChildID AccountNumberKey Value1 Value2 ProposalNumber
1 1873283 1000 100 58
2 1873283 1000 100 59
3 1873283 1000 100 60
4 1873283 1000 100 61
这是我的 SQL 语句:
SELECT DISTINCT Parent.InstitutionID, AccountNumberKey, SUM(Child.Value1 + Child.Value2) as total
INTO #TempTable
FROM Parent
INNER JOIN
Child ON Parent.AccountNumberKey = Child.AccountNumberKey
GROUP BY Parent.InstitutionID, Parent.AccountNumberKey, Child.ProposalNumber
目标是链接表并将数据放入临时表中,如下所示:
TempTable columns
InstitutionID AccountNumberKey Total
LocalHost 1873283 1100
我的 SQL 查询是否通过了集合?在分组方面,我不是天才,我想知道这是否是 A) 正确和 B) 一个好的方法,或者是否有更好的连接可以尝试。
谢谢!