将计算字段连接到1个查询中的表

时间:2013-04-08 14:13:08

标签: ms-access ms-access-2007

我有一个字段,当缩短到最左边的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];

1 个答案:

答案 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中测试的。