Sql Can';t将XXXX-XXXX整数格式与文本进行比较

Sql Can';t将XXXX-XXXX整数格式与文本进行比较,sql,ms-access,ms-access-2013,Sql,Ms Access,Ms Access 2013,我有一个尚未创建的数据库。在表a中,有一个字段fieldA定义为“长整数”,其所有值的格式为“0000-0000”(其他数字不同于0) 我已经创建了另一个带有字段fieldB的表,使用了来自表A的fieldA的相同类型的数据。我需要比较fieldB和fieldA(其中fieldA=fieldB),但我不能 我不能将fieldB定义为“长整数”,因为这样我就不能输入像“0000-0000”这样的值。我真的不明白创建数据库的人是如何在fieldA做到这一点的 如果我将其定义为“短文本”,然后尝试“W

我有一个尚未创建的数据库。在表a中,有一个字段fieldA定义为“长整数”,其所有值的格式为“0000-0000”(其他数字不同于0)

我已经创建了另一个带有字段fieldB的表,使用了来自表A的fieldA的相同类型的数据。我需要比较fieldB和fieldA(其中fieldA=fieldB),但我不能

我不能将fieldB定义为“长整数”,因为这样我就不能输入像“0000-0000”这样的值。我真的不明白创建数据库的人是如何在fieldA做到这一点的

如果我将其定义为“短文本”,然后尝试“WHERE fieldA=fieldB”,则会出现类型不匹配错误

如果我将其定义为“短文本”,然后尝试“WHERE CStr(fieldA)=fieldB”或“WHERE Str(fieldA)=fieldB”,则不会返回任何行。甚至没有一个空白行,看起来像是一个错误

由于不相关的原因,我无法修改tableA以将fieldA的类型更改为string

非常感谢您的帮助。
谢谢

尽可能长地创建字段B,并将其指定为格式:0000-0000


您可以输入,比如75522,它将显示为:0007-5522

创建字段B,并将其指定为:0000-0000格式


您可以输入75522,它将显示为:0007-5522

它不工作。通过这种方式,我可以将数据输入fieldB,但我仍然无法将其与fieldA进行比较。没有返回任何内容,即使是一个空白行也没有返回,这是出了问题。字段a中没有掩码,数据来自与另一个表的关系(如果相关的话)。如果旧字段a是长字段,而新字段B也是长字段,则如果在两个表中都找到一个或多个值,将返回记录。如果没有,其他事情正在发生。它不起作用。通过这种方式,我可以将数据输入fieldB,但我仍然无法将其与fieldA进行比较。没有返回任何内容,即使是一个空白行也没有返回,这是出了问题。字段a中没有掩码,数据来自与另一个表的关系(如果相关的话)。如果旧字段a是长字段,而新字段B也是长字段,则如果在两个表中都找到一个或多个值,将返回记录。如果不是的话,其他的事情正在发生。