其他两个表(一个细节,一个总结),假设我有一个源表是这样的:将数据加载到被相关
Source
SourceKey (PK)
Data1
Data2
Amount
,我来自“源”加载数据分为两相关的表看起来像这样:
Summary
SummaryKey (PK)
Data1
Data2
Amount
Detail
DetailKey (PK)
SummaryKey (FK)
SourceKey (FK)
Data2
Amount
编辑
忽略有关“摘要”和“详细信息”,理想的插件的问题声明是这样的:
INSERT INTO Summary (Data1, Data2, Amount)
SELECT Data1, Data2, SUM(Amount) FROM Source GROUP BY Data1, Data2
INSERT INTO Detail (SummaryKey, SourceKey, Data2, Amount)
SELECT ???, SourceKey, Data2, Amount FROM Source
我已经通过匹配的分组“解决”这个问题有一对临时存放表(对应于目标表)中连同半复杂UPDATE语句来联系他们字段(真实示例具有更复杂的分组)。我不禁感到存在比我创建的更简单的解决方案。
任何解决方案都需要在SQL Server 2000下工作。感谢您的任何想法。
哪个版本的SQL Server以及Data1和Data2中的数据类型? – MartW 2010-01-26 17:22:52
另外,聚合的基础是什么? Summary/Detail表中的SummaryKey与Source表中的任何字段之间没有明显的联系。 – MartW 2010-01-26 17:27:54
@CodeByMoonlight,我已经更新了这个问题,谢谢。 – 2010-01-26 17:59:44