ACCESS数据库里的时间类型能不能做大小比较?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ACCESS数据库里的时间类型能不能做大小比较?相关的知识,希望对你有一定的参考价值。

可以,不用datediffer这么麻烦,先把时间的数据类型设成 日期/时间,然后直接用比较运算符“<”或 “>”就可以 参考技术A datediffer 函数就是用来比较两个日期的, 任何数据库系统或者编程语言都是支持时间类型比较大小的. 参考技术B 应该是可以的,是在不行,使用VBA应该也能实现!

double类型大小比较的方法

问题

在Java中,int类型数据的大小比较可以使用双等号,double类型则不能使用双等号比较大小,那若使用double类型时怎么进行比较呢?

方法

    1. 转换为字符串

如果要比较的两个double数据的字符串精度相等,可以将数据转换成string然后借助string的equals方法来间接实现比较两个double数据是否相等。

代码运行结果如下:

(2)使用doubleToLongBits()方法

该方法可以将double转换成long型数据,从而可以使double按照long的方法(<, >, ==)判断是否大小和是否相等。

代码运行结果如下:

(3)在误差范围内运行相等

两实数的差在允许范围内认为相等即可认为是相等的。代码中的0.0000001指范围(1e-6)

代码运行结果如下:

结语

针对如何在double类型时比较大小的问题,此处我们提供了三种解法,分别为先将它们转换类型变为字符串类型再进行比较,第二种是使用doubleToLongBits()方法,第三种最为简单,则是使其差值在误差范围内则两个值相等。注意第一种转换为字符串类型的方法只适用于比较精度相同的数据,并且只用于两者是否相等的情况下。

以上是关于ACCESS数据库里的时间类型能不能做大小比较?的主要内容,如果未能解决你的问题,请参考以下文章

CDateTimeCtrl类型的日期如何比较大小

怎么判断access数据库里的某个字段不等于空

java中 Long类型能直接和int类型比较大小了?

java中15.3%5等于几,能不能告诉为啥

谁知道Access数据库行数有没有限制?是多少?

浮点数的比较