我有一个字段,当缩短到最左边的2个字符时,可以作为关键字段连接到另一个表。
当我这样做时,我总是要在自己的查询中执行LEFT([FieldName],2)位,然后在第二个查询中执行实际连接。
有没有办法在单个查询中完成此操作?
这是查询的语法,它削弱了最左边的2个字符;我们称之为QueryA
:
SELECT Left([TableA].[Field1],2) AS AbbrField1
FROM [TableA];
这是根据我必须首先创建的字段“AbbrField1”将QueryA
连接到另一个表的查询;我们称之为QueryB
:
SELECT [TableB].[Field2]
FROM [QueryA]
LEFT JOIN [TableB] ON [QueryA].[AbbrField1] = [TableB].[Field1];
答案 0 :(得分:2)
您应该可以使用JOIN上的JOIN
函数LEFT
表:
SELECT B.[Field2]
FROM [TableA] as A
LEFT JOIN [TableB] as B
ON Left(A.[Field1], 2) = B.[Field1];
这将消除对第二个查询的需要。
注意:这是在MS Access 2003中测试的。