0
我一直無法弄清楚如何將這個SQL字符串放在一起。如果有人能幫助我,我真的很感激。我使用的是Access 2016,所以請只提供適用於Access的答案。我有兩個查詢都有不同的領域,除了一個共同的。我需要找到兩個相似列之間的最小絕對差異。然後,我需要能夠從相應的記錄中提取數據。例如,訪問2016 SQL:查找不同表格的兩列之間的最小絕對差異
qry1.Col1 | qry1.Col2
-----------|-----------
10245.123 | Have
302044.31 | A
qry2.Col1 | qry2.Col2
----------------------
23451.321 | Great
345622.34 | Day
在第三個查詢qry3中查找最小絕對差值。舉例來說,閔(ABS(qry1 Col1中 - !qry2 Col1中),我想它會產生這些表在qry1.Col1每個值的一個值10245.123,
qry3.Col1
----------
13206.198
335377.217
由於13206.198是最小絕對的。區別,我想拉從qry2對應的記錄,並將其與qry1數據關聯起來(我假設這使用JOIN)。在這樣的第四個詢問得到的,
qry4.Col1 (qry1.Col1) | qry4.Col2 (qry1.Col2) | qry4.Col3 (qry2.Col2)
----------------------------------------------------------------------
10245.123 | Have | Great
302044.31 | A | Day
如果這是所有這些都可以在一個SQL字符串中實現,這將非常棒。如果需要幾個步驟,那也可以。我只是想避免不得不使用循環和耗時Set.Findfirst在VBA中。
謝謝。有沒有辦法選擇與前1相同的記錄中的多列數據? – Josh
啊我看到,我可以添加額外的選擇頂部子查詢的額外領域。但是,當我這樣做時,Access告訴我「最多可以從這個子查詢中選擇一條記錄。」 – Josh
@Josh。 。 。 MS Access確實是'TOP WITH TIES'。您可以通過在'ORDER BY'中包含一個唯一鍵作爲最後一個鍵來解決這個問題。 –