从SQLite中的当前日期获取记录
在MSSQL中使用从SQLite中的当前日期获取记录,sql,sqlite,Sql,Sqlite,在MSSQL中使用 where DateDiff(Day,CurrentDate,getdate())=0 显示从CurrentDate创建的所有记录 如何在Sqlite中实现这一点?我建议使用DATEDIFF或涉及CurrentDate字段的任何其他函数将导致查询无法利用该字段上的任何索引 更好的方法是将WHERE子句编写为WHERE CurrentDate>=DATEADD(DAY,DATEDIFF(DAY,'2000-01-01',GETDATE(),'2000-01-01'))-
where DateDiff(Day,CurrentDate,getdate())=0
显示从CurrentDate创建的所有记录
如何在Sqlite中实现这一点?我建议使用DATEDIFF或涉及
CurrentDate
字段的任何其他函数将导致查询无法利用该字段上的任何索引
更好的方法是将WHERE子句编写为WHERE CurrentDate>=DATEADD(DAY,DATEDIFF(DAY,'2000-01-01',GETDATE(),'2000-01-01'))
-或任何其他在比较中保持CurrentDate
不变的重写
注意:可能有更好的方法将日期和时间转换为日期-我的方法基于MSSQL 2008年之前的T-SQL。我建议使用DATEDIFF或任何其他涉及
CurrentDate
字段的函数将导致查询无法利用该字段上的任何索引
WHERE CurrentDate BETWEEN DATE('now') AND DATE('now', '+1 day')
更好的方法是将WHERE子句编写为WHERE CurrentDate>=DATEADD(DAY,DATEDIFF(DAY,'2000-01-01',GETDATE(),'2000-01-01'))
-或任何其他在比较中保持CurrentDate
不变的重写
注意,可能有更好的方法将日期和时间转换为日期-我的方法基于MSSQL 2008之前的T-SQL
WHERE CurrentDate BETWEEN DATE('now') AND DATE('now', '+1 day')
资料来源: