苏州三木软件科技有限公司

 找回密码
 立即注册
搜索
热搜: 活动
查看: 845|回复: 1

sql查询语句的where条件是日期时间字段与当前时间比较

[复制链接]

30

主题

42

帖子

318

积分

中级会员

Rank: 3Rank: 3

积分
318
发表于 2023-7-17 09:16:31 | 显示全部楼层 |阅读模式
sql查询语句的where条件是日期时间字段与当前时间比较,如:当前时间比数据库日期时间字段的时间相比,大于24小时,怎么写这个where条件,请按Sqlite数据库和SqlServer数据库分别说明。
错误代码如下,StartUseTime是日期时间字段:
db.ExecuteNonQuery("update QueryUsed set Used='N' where "+db.SQLBuilder.CurrentTimeString+"-StartUseTime>24小时");
回复

使用道具 举报

25

主题

313

帖子

2077

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2077
QQ
发表于 2023-7-17 10:17:06 | 显示全部楼层
你这个得用相应数据库的时间计算函数才可以得到
SQLServer:
SELECT DATEDIFF(hour,'2014-10-21 15:22','2014-10-23') as hours
SQLite:
SELECT (JULIANDAY(datetime('2014-10-23'))-JULIANDAY(datetime('2014-10-21 15:22')))*24  as hours

SQLServer:
strCMD="update QueryUsed set Used='N' where DATEDIFF(hour,StartUseTime,"+db.SQLBuilder.CurrentTimeString+")>24"
SQLite:
strCMD="update QueryUsed set Used='N' where (JULIANDAY("+db.SQLBuilder.CurrentTimeString+")-JULIANDAY(StartUseTime))*24>24"
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|苏州三木软件科技有限公司 ( 苏ICP备2022038390号 )

苏公网安备 32058502010732号

GMT+8, 2024-10-2 23:24 , Processed in 0.067041 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表