2014-12-02 74 views
0

我试图从存储在hsqldb中的日期列表中检索生日,以便我可以列出即将到来的生日在未来7天内。 以下是查询。当我执行此查询时,我得到curdate的意外令牌。我也尝试了sysdate()和current_date,我得到了同样的错误。请帮我解决这个问题。如何从hsqldb中的日期检索当前日期和day_of_month以列出即将到来的生日

SELECT * 
 
FROM contacts 
 
WHERE DATE_ADD(dob, INTERVAL YEAR(CURDATE())-YEAR(dob) YEAR) 
 
      BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 7 DAY);

回答

1

第一次使用间隔是不正确的语法。你可以这样修改:

SELECT * 
FROM contacts 
WHERE DATE_ADD(dob, (CURDATE() - dob) YEAR) 
      BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 7 DAY); 
相关问题