2013-05-20 41 views
1

我正在使用SQLite,現在如何選擇一個查詢,如果我有一個時間戳列有這個值,例如07:00 06/03/13但我只想選擇時間戳06/03/13選擇沒有時間的日期

這是我的我的查詢的例子..

select 
    timestamp, pname 
from 
    attendance 
where 
    timestamp between `06/01/13` and `06/10/13` 
+0

使用simpleDateFormat.parse解析它爲一個字符串 –

回答

1

使用date

select timestamp, pname 
from attendance 
where date(timestamp) = '2013-03-06' 
0

SQLite的支持功能date,它可以被用來獲得時間戳的日期部分。例如:

SELECT * FROM mytable WHERE date(timestamp_col) = '2013-05-20' 

有關更多信息,請參閱SQLite date and time functions documentation

1

在時間戳列上過濾時,您需要此邏輯。

where YourField >= TheStartOfYourRange 
and YourField < TheDayAfterTheEndOfYourRange 

這相當於使用date()函數的兩個答案,但通常會執行得更快。在where子句中使用函數通常會減慢生產速度,特別是在索引字段上。