访问VBA以将文本连接到数字

时间:2017-11-03 13:28:01

标签: vba ms-access access-vba ms-access-2013

我正在尝试针对两个表编写一个Select语句 - 遗憾的是我无法为这两个表更改DDL。

这是选择语句

SELECT DISTINCT unitid 
FROM [piece1] 
WHERE [piece1].[unitid] IN (
                             SELECT DISTINCT [department id] 
                             FROM [vendorspreadsheet] 
                             WHERE [vendorspreadsheet].[department id] IS NOT NULL)

现在问题是piece1.unitid是一种短文本数据类型,但vendorspreadsheet.[department id]是一种数字数据类型。

更改此语法的适当方法是什么,以便查询将成功执行?

2 个答案:

答案 0 :(得分:1)

您可以尝试

WHERE cdbl([piece1].[unitid]) IN 

但它可能会降低性能。更好的解决方案是将piece1.unitid转换为数字。 当然,我假设piece1.unitid包含存储为文字的数字。

答案 1 :(得分:1)

试试这个:

WHERE Clng([piece1].[unitid]) IN