sqliteselect与条件的date

我有一个SQLite表与出生date。 我想执行一个查询来select那些年龄大于30岁的logging。我已经尝试了以下,但它不起作用:

select * from mytable where dob > '1/Jan/1980' select * from mytable where dob > '1980-01-01' 

有些事情可以这样使用:

 select dateofbirth from customer Where DateofBirth BETWEEN date('1004-01-01') AND date('1980-12-31'); select dateofbirth from customer where date(dateofbirth)>date('1980-12-01'); select * from customer where date(dateofbirth) < date('now','-30 years'); 

如果你使用Sqlite V3.7.12或更高版本

不要使用date(dateofbirth)只是使用dateofbirth 。 所以你的查询看起来像这样:

 select * from customer where dateofbirth < date('now','-30 years'); 

在sqlite网站上使用魔术文档:

 select * from mytable where dob < date('now','-30 years'); 

尝试使用date格式“YYYY-MM-DD”

 select * from mytable where dob > '1980-01-01' 

一个更加程序化的方式是这样的:

 select * from mytable where datediff(dob, now()) > 30 

你将需要为sqlitefind特定的语法。