Access SQL:与数字字段上的函数类似

时间:2016-11-21 15:10:52

标签: sql ms-access

例如,我在Microsoft Access数据库中有这个表:

id                        numeric
context                   text
numberfield               numeric

我想在“numberfield”列中选择以9结尾的每条记录。这会产生一个问题,因为它是一个数字字段,因此我不能使用以下SQL:

select * from table where numberfield like "%9"

解决方案是我将数字字段更改为文本。但这会产生一个问题,因为有几个用户,这种变化可能会在将来出现问题。当它是数字字段时,是否可以选择结尾?

3 个答案:

答案 0 :(得分:2)

听起来有点可疑..你确定可以使用那个查询吗?不了解Access,但几乎任何其他DBMS都允许。

如果它确实不起作用,你可以这样做:

select * from table where STR(numberfield) like "*9"

编辑:也许它无效,因为您在访问中使用了% *

select * from table where numberfield like "*9"

答案 1 :(得分:1)

数字是数字,因此请使用Mod:

select * from table where numberfield mod 10 = 9

答案 2 :(得分:0)

不是转换为字符串并进行比较,而是使用MOD操作提取最右边的数字 编辑您的查询,如下所示:

SELECT *
FROM table 
WHERE ((([numberfield] Mod 10)=9));