2013-04-08 61 views
1

我有一個字段,縮寫爲其最左邊的2個字符時可以作爲關鍵字段連接到另一個表。將計算字段加入到1個查詢中的表中

當我這樣做時,我總是必須在自己的查詢中執行LEFT([FieldName],2)位,然後在第二個查詢中執行實際的連接。

有沒有在單個查詢中完成此操作的方法?

下面是查詢的語法,它刪除最左邊的兩個字符;讓我們把它QueryA

SELECT Left([TableA].[Field1],2) AS AbbrField1 
FROM [TableA]; 

下面是加入QueryA基於該領域的另一個表查詢「AbbrField1」我已經創造一流;讓我們把它QueryB

SELECT [TableB].[Field2] 
FROM [QueryA] 
LEFT JOIN [TableB] ON [QueryA].[AbbrField1] = [TableB].[Field1]; 

回答

2

您應該能夠使用基於連接的LEFT功能JOIN表:

SELECT B.[Field2] 
FROM [TableA] as A 
LEFT JOIN [TableB] as B 
    ON Left(A.[Field1], 2) = B.[Field1]; 

這將刪除第二個查詢的需要。

注:這在MS Access測試2003

+0

我不得不使用您創建的'B'別名'[表B]'的'SELECT'部分之前,它的工作,但工作得很好之後。非常感謝你。 – 2013-04-08 17:02:43

+0

@Matt對不起,我胖了。很高興現在正在工作。 – Taryn 2013-04-08 17:05:11

相關問題