有没有办法将整数连接到一个字符串,在Microsoft Access中始终包含一个整数

时间:2012-07-25 13:55:42

标签: ms-access

在Microsoft Access中,我有两个链接表,我无法更改其结构。

其中一个表包含整数格式的ID,另一个包含相同的ID,但是以字符串格式。

我想加入这些领域,但很明显,MS Access并没有让我这么做。

有没有办法,可能使用强制转换或类似的东西来创建此连接?

由于

2 个答案:

答案 0 :(得分:3)

如果ID中的t1t2中的自动编号和CLng()中的文字,则可以使用ON表达式中的t2.IDSELECT * FROM t1 INNER JOIN t2 ON t1.ID = CLng(t2.ID); 转换为Val()长整数。

CLng()

或者您可以将ID代替t2用于其他SELECT CLng(ID) AS numeric_ID, t2.* FROM t2; 数字类型。

我不确定查询设计师在设计视图中与此合作的程度如何,但您可以在SQL View中执行此操作。

OTOH,您可能更愿意为qryT2创建一个单独的查询" qryT2",它会将文本ID转换为数字。

t2

然后,您可以在第一个查询中将SELECT * FROM t1 INNER JOIN qryT2 ON t1.ID = qryT2.numeric_ID; 替换为{{1}},并让查询设计器找到更合适的一个。{/ p>

{{1}}

答案 1 :(得分:2)

转到设计器中的View > SQL View,然后将您的join子句更改为:

ON CSTR(IntegerID) = StringID

当然,您的ID名称可能会有所不同,但您应该考虑这个想法。