Как в SQL-запросе выбрать все записи на текущую дату?
Предыстория:
1. Поле в БД имеет тип INTEGER, т.к. SQLite не имеет специального типа для хранения даты.
2. Для сохранения даты в Android-приложении используется код:
Код: Выделить всё
Date date = new Date();
...
cv = new ContentValues();
...
cv.put(COLUMN_DATA, date.getTime());
...
long newId = db.insert(Table.TABLE_NAME, null, cv);
Код: Выделить всё
Cursor c = db.query(Table.TABLE_NAME, null, selection, args, null, null, null);
if (c != null){
if (c.moveToFirst()){
indication = new Indication(c);
Log.d(LOG_TAG, indication.toString());
} else{
Log.d(LOG_TAG, "getIndication. Cursor NOT moved to First!!");
}
c.close();
} else{
Log.d(LOG_TAG, "getIndication. Cursor is NULL");
}
...
public Indication (Cursor c){
super();
// Log.d(TAG, "Constructor Indication on Cursor");
// Читаем из БД
int idx;
for (String colName : c.getColumnNames()){
idx = c.getColumnIndex(colName);
switch (colName){
case _ID:
_id = c.getLong(idx);
break;
case COLUMN_DATA:
date = new java.sql.Date(c.getLong(idx));
break;
...
А вот как только возникла потребность создать запрос по выборке на конкретную дату - так все.
В самой БД это просто числа, конвертировать в дату она их не умеет.
Не могу сообразить как это сделать.