我需要一些幫助,以便在MS Access中使用SQL查詢執行以下操作。SQL MS ACCESS:表和篩選結果之間的選擇性操作
我想執行在下面的例子中所示的操作:
初始表
表A
Name H1 H2 H3
A 5 10 5
B 1 2 3
C 7 3 1
表B:
Name H1 H2 H3
1 1 1 1
2 2 2 2
1 )第一步:結果
NAME TABLE A NAME TABLE B H1 H2 H3
A 1 4 9 4
A 2 3 8 3
B 1 0 1 2
B 2 1 0 1
C 1 6 2 0
C 2 5 1 1
所以,這個新表的第一行被計算爲ABSOLUTEVALUE(表A(行A) - 表B(ROW1)),該表的第二行。將ABSOLUTEVALUE(表A(行A) - 表B(第2行))等等。
2)第2步驟:結果
NAME TABLE A NAME TABLE B H1 H2 H3 Total
A 1 4 9 4 17
A 2 3 8 3 14
B 1 0 1 2 3
B 2 1 0 1 2
C 1 6 2 0 8
C 2 5 1 1 7
因此,在這個步驟中,我將需要添加一個字段WHIS被計算爲值H1,H2和每行
3的H3的總和)最終步驟:結果
Name H1 H2 H3
A 3 8 3
B 1 0 1
C 5 1 1
而且在最後的步驟中,我們選擇從上表中,其中場總計具有最小值的那些A,B &ç行。
謝謝!
數據庫是不一個電子表格,並不像一個工作。表格需要通過常用值而不是行位置相關。此外,「名稱」是保留字,不應用作字段名稱。您應該對數據庫設計和規範化進行一些研究,並重新設計您的表格。 – AVG
AVG,雖然它們通常使用不佳,但CROSS JOIN有時仍然是一種適合某種情況的工具。由於這種情況使用這兩個表的笛卡爾乘積而不需要排除'WHERE','CROSS JOIN'對於這種情況是理想的。它們通常寫成'FROM A,B',儘管有些語言允許'A CROSS JOIN B'。我同意你使用'Name'。儘管我也相信正常化的優勢等等,但我不相信這種情況下的表格可以進一步正常化(有時會發生這種情況)。 – toonice