2011-09-22 154 views
0

我需要在“约会”表上获得3个查询。SQLite:当前日期加上where条款中的一天

  1. 其中今天appointment.start_date是,
  2. 其中appointment.start_date =今天+ 1天,和
  3. 其中appointment.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天”)从这个链接this link但它返回相同的结果作为第一查询。

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

回答

1

如果你使用的正是公司发布的,我说你有一个间隔的问题

SQLite的用途“+ 1天”,并且您已经发布“+1天”

如果不出明确的错误信息,与它的空间应该工作

+0

对不起完全是我自己的idiosity我的查询是错误的:'WHERE日期( “现在”, “+1天”)=日期(起始, “+1天”)'应改为'WHERE日期( “现在” ,“+ 1day”)= date(start_date)'我有额外的+1天。卫生署!感谢您的回复。 – iamjonesy

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 + "'"); 
1

对不起我的全部(“now”,“+ 1day”)= date(start_date,“+ 1day”)应该读取WHERE date(“now”,“+ 1day”)= date(start_date)I有额外的+1天。卫生署!

0

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

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