从Access表达式中的十进制中提取整数

问题描述 投票:1回答:1

我无法从Access中表达式构建器中的数字字段中提取整数。

这是我认为会起作用的:

Left([NumField],InStr(1,[NumField],".")-1)

这不起作用。运行我的查询后,我弹出一个消息框,说明“无效的呼叫过程”

表达式= 1.4之前的字段

表达式= 1后的字段

从而拿出整数并提取出来。当然,整数可以是3,30或300.长度将始终不同,因此您不能使用左边的修剪长度为1。

建议?

expression ms-access-2010
1个回答
2
投票

您似乎将数值视为字符串,以便提取整数部分。建议你考虑使用Int()函数。

Int([NumField])

还有一个相关的功能,Fix()。从Access帮助主题:

Int和Fix之间的区别在于,如果number为负数,则Int返回小于或等于number的第一个负整数,而Fix返回大于或等于number的第一个负整数。例如,Int将-8.4转换为-9,Fix将-8.4转换为-8。

我假设您想要查询返回的数字。如果你真的想要数字作为字符串,你可以使用CStr(Int([NumField]))Format(Int([NumField]), "#")

© www.soinside.com 2019 - 2024. All rights reserved.