cucme 发表于 2024-7-3 14:28:53

公式字段怎么取当前时间?

我需要根据设备的上次更新时间和当前时间对比,如果超过某个范围判断设备为离线

在表格中直接写公式可以实现,但是不能做数据库查询,筛选在线、离线


所以想着用公式字段


但是公式字段里使用的now()函数似乎只在生成的那一刻生成,后续不再变化?


怎么办?


玉轩 发表于 2024-7-3 15:34:30

你可以更新一下表格里的一个字段,时间 就会变

cucme 发表于 2024-7-4 09:05:07

玉轩 发表于 2024-7-3 15:34
你可以更新一下表格里的一个字段,时间 就会变

每次查询要把所有记录更新一遍,有点不合理。   或许我这个问题应该是如何实现这种情况的搜索。

小萝卜David 发表于 2024-7-4 09:48:44




求:NOW() - AL12 - 0.02 > 0
假设AL12是字段 上次更新日期,可得
NOW() - 上次更新日期 - 0.02 > 0
=>
NOW() - 上次更新日期 - 0.02 + 上次更新日期 > 0 + 上次更新日期
=>
NOW()- 0.02 > 上次更新日期
=>
上次更新日期 < NOW() - 0.02




cucme 发表于 2024-7-4 14:08:10

小萝卜David 发表于 2024-7-4 09:48
求:NOW() - AL12 - 0.02 > 0
假设AL12是字段 上次更新日期,可得
NOW() - 上次更新日期 - 0.02 >...



里面有两个字段要参与计算,所以在搜索条件里不知道怎么安放


Nathan.guo 发表于 2024-7-5 14:19:36

cucme 发表于 2024-7-4 14:08
里面有两个字段要参与计算,所以在搜索条件里不知道怎么安放

我们公式字段可以只计算 + /86400 + 0.02,可以把这个当作过期时间

那么查询时只需要比较这个过期时间和now就可以了

cucme 发表于 2024-7-5 15:59:01

Nathan.guo 发表于 2024-7-5 14:19
我们公式字段可以只计算+ /86400 + 0.02,可以把这个当作过期时间

那么查询时只需要比 ...

这个方法试过,很奇怪,计算出来的不是时间,也不能用Text()函数格式化

Nathan.guo 发表于 2024-7-5 16:09:09

本帖最后由 Nathan.guo 于 2024-7-23 17:54 编辑

cucme 发表于 2024-7-5 15:59
这个方法试过,很奇怪,计算出来的不是时间,也不能用Text()函数格式化
可以i检查下是不是公式字段的字段类型不对

同时,如果大佬使用的是外联数据库的话,也可以检查下外联数据库的字段类型是否可以被计算或按照特定方式查询~~
页: [1]
查看完整版本: 公式字段怎么取当前时间?