次の Access 2010 クエリを使用して、数千の組織の経費を含む大規模な (100 万を超えるレコード) csv データベースからデータを取得することに成功しました。このクエリは、LINE_NUM (00100 から 10099 までの行番号) で編成された数値の長い列と、各組織の合計 (行番号 10100) を生成します。
SELECT
[1995_1].RPT_REC_NUM,
[1995_1].PRVDR_NUM,
[1995_2].WKSHT_CD,
[1995_2].LINE_NUM,
[1995_2].CLMN_NUM,
[1995_2].ITM_VAL_NUM
FROM 1995_1
INNER JOIN 1995_2
ON [1995_1].RPT_REC_NUM = [1995_2].RPT_REC_NUM
WHERE
((([1995_2].WKSHT_CD)="A000000") AND (Not ([1995_2].LINE_NUM)="09500") AND
(([1995_2].CLMN_NUM)="0100" Or ([1995_2].CLMN_NUM)="0200"))
ORDER BY [1995_1].RPT_REC_NUM, [1995_1].PRVDR_NUM, [1995_2].LINE_NUM;
行の合計が( 00100-10099) =sum(10100)
.
これまでのところ、この目標を達成するためにクエリを編集できませんでした。
RPT_REC_NUM|WKSHT_CD|LINE_NUM|CLMN_NUM|ITM_VAL_NUM
38897 A000000 100 600 -58202
38897 A000000 200 200 98030
38897 A000000 200 600 8169
38897 A000000 300 200 3445
38897 A000000 400 200 406237
38897 A000000 400 600 22879
38897 A000000 500 100 319063
38897 A000000 500 200 1856092
38897 A000000 500 600 -202
38897 A000000 600 100 1433541
38897 A000000 600 200 3762820
38897 A000000 600 600 -1169298
38897 A000000 700 100 265470
38897 A000000 700 200 551233
38897 A000000 900 100 69663
38897 A000000 900 200 38948
38897 A000000 1000 100 214322
38897 A000000 1000 200 105166
38897 A000000 1100 100 273255
38897 A000000 1100 200 451171
38897 A000000 1100 600 -188629
38897 A000000 1400 100 396603
38897 A000000 1400 200 6961
38897 A000000 1500 100 143603
38897 A000000 1500 200 912099
38897 A000000 1600 200 1059912
38897 A000000 1700 100 240054
38897 A000000 1700 200 83344
38897 A000000 1700 600 -2638
38897 A000000 2500 100 2013226
38897 A000000 2500 200 98046
38897 A000000 2500 600 -2327
38897 A000000 2600 100 551931
38897 A000000 2600 200 23301
38897 A000000 3300 100 196060
38897 A000000 3300 200 13485
38897 A000000 3300 600 -2079
38897 A000000 3700 100 539873
38897 A000000 3700 200 427198
38897 A000000 3800 100 55167
38897 A000000 3800 200 2693
38897 A000000 3900 100 329716
38897 A000000 3900 200 33014
38897 A000000 4000 100 24716
38897 A000000 4000 200 130758
38897 A000000 4000 600 -83333
38897 A000000 4100 100 479582
38897 A000000 4100 200 1662635
38897 A000000 4100 600 -932119
38897 A000000 4300 100 48048
38897 A000000 4300 200 187022
38897 A000000 4300 600 -38404
38897 A000000 4400 100 547169
38897 A000000 4400 200 589613
38897 A000000 4400 600 -83525
38897 A000000 4600 100 49044
38897 A000000 4600 200 88309
38897 A000000 4800 200 73280
38897 A000000 4900 100 189434
38897 A000000 4900 200 48636
38897 A000000 5000 100 5415
38897 A000000 5000 200 546001
38897 A000000 5000 600 -97409
38897 A000000 5300 100 138862
38897 A000000 5300 200 111687
38897 A000000 5300 600 -67989
38897 A000000 5400 100 6129
38897 A000000 5400 200 3758
38897 A000000 5600 600 -2092
38897 A000000 6100 100 629731
38897 A000000 6100 200 944625
38897 A000000 6100 600 -871968
38897 A000000 9000 200 110713
38897 A000000 9000 600 -8202
38897 A000000 10100 100 9159677
38897 A000000 10100 200 14430232
38897 A000000 10100 600 -3577368
返信ありがとうございます。このデータには列 600 が含まれており、クエリで除外されていることに注意してください。ただし、(私が思うに) 私が達成したいことを示しています: 行 100-9000 列 100 & 200 に関連付けられた値を合計して、それらの合計が行 10100 列 100 & 200 の合計であるかどうかを確認します。
この説明がお役に立てば幸いです。
アル