我在sqllite数据库中有一些数据:
id column1 date
111 280 1/1/2014
112 281 invalid invalid invalid
113 282 invalid invalid invalid
114 275 1/2/2014
......................
338 273 1/31/2014
我想在1月份选择所有记录。日期列的格式为mm / dd / yyyy。踢球者是有一些干预记录是无效的,没有约会。我也想选择这些,这样我最终得到了id 111-338
之间的所有记录除id之外的所有列都是文本格式。
我该怎么做?
答案 0 :(得分:1)
不是防弹但值得一试。
select *
from t
where cast (substr(date,1,instr(date,'/')-1) as int) in (0,1)
;
答案 1 :(得分:1)
日期列的格式为mm / dd / yyyy
这是你的问题。您应该使用yyyy-mm-dd格式,该格式按字典顺序排序并与SQLite date and time functions兼容。