Microsoft Access短文本字段中查询小于10的数值的语法是什么
Microsoft Access短文本字段查询小于10数值的语法方案
短文本类型的字段默认按文本规则排序,直接写[字段名] < "10"会出现不符合预期的结果(比如文本"2"会判定为大于"10"),需要先将文本转换为数值类型再做比较。
适用场景1:字段内仅存储合法数值
直接使用Access内置的VAL()函数完成文本转数值的操作,SQL语法如下:
SELECT * FROM 替换为你的表名 WHERE VAL(替换为你的短文本字段名) < 10;
如果是在查询设计视图中操作,直接在对应短文本字段的「条件」行输入VAL([你的字段名]) < 10即可。
适用场景2:字段内可能混有非数字内容
先通过ISNUMERIC()函数筛选出可以转换为数值的记录,再做大小比较,避免转换异常:
SELECT * FROM 替换为你的表名 WHERE ISNUMERIC(替换为你的短文本字段名) = True AND VAL(替换为你的短文本字段名) < 10;
注意事项
VAL()函数会自动忽略文本开头的空格,仅读取开头连续的数字部分完成转换,如果数值存储在文本中间位置,需要先做字符串截取再转换。
内容的提问来源于stack exchange,提问作者Garvain Campbell
相关产品推荐
相关产品推荐

