я ищу, чтобы выбрать игры для следующих 24 часов от моего стола:SQLITE следующие 24 часа данные
String sql = "SELECT * FROM teamstable
WHERE ((teamdate >= datetime ('now'))
AND (teamdate < datetime('now','+24 hours')))
ORDER BY teamdate";
Cursor cursor = db.rawQuery(sql, null);
Но результат странно, потому что у меня есть только завтрашние игры:
String teamDate48 = "2015-03-08 21:30";
.
.
String teamDate54 = "2015-03-08 13:00";
Я должен также иметь сегодняшние игры:
String teamDate41 = "2015-03-07 20:30";
.
.
String teamDate47 = "2015-03-07 19:00";
Если это уместно, я форматирование даты в местное время в этой операции, как ш ELL:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date datex = null;
try
{
sdf.setTimeZone(TimeZone.getTimeZone("America/New_York"));
datex = sdf.parse(tdate111);
System.out.println(datex);
} catch (ParseException e) {
e.printStackTrace();
}
sdf.setTimeZone(TimeZone.getDefault());
Моя догадка: проблема вызвана разницей в часовом поясе между моим телефоном (GMT) и сохраненными даты (America/New_York). Может ли это вызвать это?
Прочитайте [документацию] (http://www.sqlite.org/lang_datefunc.html). –
@CL. не могли бы вы уточнить, пожалуйста? должен ли я использовать 'strftime' вместо datetime, или мне нужно добавить «: SS» к моим строкам –
@ nate-barbettini Спасибо за большие улучшения, мне нужно узнать больше по-английски .. ха-ха –