尝试返回没有字母的字段[doc]。结果到处都是。
SELECT Right([doc],4) AS ex1, IsNumeric([ex1]) AS ex2
FROM stat_converted;
查询返回两个字段,但不能正确评估。所有数字和其他全部字母的结果将返回True(-1)。
我还尝试构建临时表,然后将IsNumeric应用于具有相同结果的表。
我还构建了一个小型测试数据库,逻辑工作,所以我真的很困惑。
答案 0 :(得分:3)
IsNumeric
会匹配" 2E + 1" (2倍于10的幂,即20),因为这是科学格式的数字。 " 0D88"也是IsNumeric
的数字,因为它是" 0E88"的双精度(" D")版本。
您可以使用LIKE '####'
来恰好匹配四位数字(0-9)。
如果你有更复杂的匹配要求,比如说可变数量的数字,你会对Expressing basic Access query criteria as regular expressions感兴趣。