SQLite:当前日期加上where子句中的一天

SQLite: Current date plus one day in where clause

本文关键字:子句 一天 where 当前日期 SQLite      更新时间:2023-09-26

我需要在'约会'表上获得3个查询。

  1. 约会的地方。start_date是今天,
  2. 约会的地方。start_date =今天+1天,
  3. 约会的地方。start_date>今天+1天。

我有1。下好了。

var resultSet = conn.execute('SELECT * FROM appointments WHERE date() = date(start_date)');

2。,我试过了:

var resultSet = conn.execute('SELECT * FROM appointments WHERE date("now", "+1day") = date(start_date, "+1day")');

我得到日期('现在','+1天')从这个链接这个链接,但它返回相同的结果作为第一个查询。

有人可以帮助这些查询吗?

如果你使用的正是张贴的内容,我认为你有空格问题

SQLite使用'+1day',而你已经发布了'+1day'

排除任何显式错误消息,使用空格it 应该工作

我不确定SQLite,但尝试下一个代码:

var now = new Date();
var nowStr = now.getFullYear()+"-"+(now.getMonth()+1)+"-"+now.getDate();
var nowPlus1 = new Date(Number(now)+24*60*60*1000);
var nowPlus1Str = nowPlus1.getFullYear()+"-"+(nowPlus1.getMonth()+1)+"-"+nowPlus1.getDate();
var resultSet = conn.execute("SELECT * FROM appointments WHERE start_date = '" + nowStr + "'");
var resultSet = conn.execute("SELECT * FROM appointments WHERE start_date = '" + nowPlus1Str + "'");
var resultSet = conn.execute("SELECT * FROM appointments WHERE start_date > '" + nowPlus1Str + "'");

对不起,完全是我自己的白痴,我的查询是错误的:WHERE date("now", "+1day") = date(start_date, "+1day")应该读WHERE date("now", "+1day") = date(start_date)我有一个额外的+1天。哎!

试着用"plus one day"代替"+1 day"。它没有文档,但在另一个代码中为我工作。

var resultSet = conn.execute('SELECT * FROM appointments WHERE date("now plus one day") = date(start_date plus one day")');