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

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

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

[复制链接]

35

主题

53

帖子

371

积分

中级会员

Rank: 3Rank: 3

积分
371
发表于 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小时");
回复

使用道具 举报

100

主题

405

帖子

2549

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2549
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, 2025-1-18 14:51 , Processed in 0.063289 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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