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

时间:2011-09-22 15:17:21

标签: javascript sqlite

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

  1. 今天约会.start_date,
  2. 其中appointment.start_date =今天+ 1天,
  3. 其中appointment.start_date是>今天+ 1天。
  4. 我得到了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")');
    

    我从此链接this link获得了日期('now','+ 1day'),但它返回的结果与第一个查询相同。

    有人可以帮助解决这些问题吗?

4 个答案:

答案 0 :(得分:1)

如果您正在使用所发布的内容,我会说您有间距问题

SQLite使用'+1天'并且您已发布'+ 1day'

禁止显示任何明确的错误消息, 的空间

答案 1 :(得分:1)

我不确定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 + "'");

答案 2 :(得分:1)

很抱歉我自己的好意我的查询错了:WHERE日期(“现在”,“+ 1天”)=日期(start_date,“+ 1day”)应该读取WHERE日期(“now”,“+ 1day”) = date(start_date)我有额外的+1天。卫生署!

答案 3 :(得分:0)

尝试“加一天”而不是“+1天”。它没有记录,但在另一个代码中为我工作。

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