2013-05-20 3 views
1

Я использую SQLite, теперь как я могу выбрать запрос, если у меня есть столбец timestamp, который имеет это значение, например 07:00 06/03/13, но я хочу только выбрать, где timestamp 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 обычно замедляет производство, особенно в индексированных полях.

Смежные вопросы