Qualcuno di voi sa come fare una query, tramite cursor, con la clausola where (cioè in una stringa che va nel campo selection) data (colonna contenente date di calendario) = (o maggiore o minore o compresa tra altre) 26/04/2010?
Perchè io ho provato con queste stringhe:
-selezione = ClassToolEventiCalendari.START_DATE + " > 26-04-2010 AND " + ClassToolEventiCalendari.START_DATE + " < 27-04-2010 ";
-selezione = ClassToolEventiCalendari.START_DATE + " > '26-04-2010' AND " + ClassToolEventiCalendari.START_DATE + " < '27-04-2010' ";
-selezione = ClassToolEventiCalendari.START_DATE + " BETWEEN 26-04-2010 AND 27-04-2010 ";
-selezione = ClassToolEventiCalendari.START_DATE + " BETWEEN '26-04-2010' AND '27-04-2010' ";
-selezione = ClassToolEventiCalendari.START_DATE + " = 26-04-2010 ";
-selezione = ClassToolEventiCalendari.START_DATE + " = '26-04-2010' ";
-come sopra ma nel formato yyyy-mm-dd
-come sopra ma con / al posto di -
Usando questa istruzione:
cursor c=getContentResolver().query(uri, proiezione, selezione, null, ClassToolEventiCalendari.START_DATE);
Se non uso la selezione e lascio null, o comunque non metto nessun campo dateyime, mi ritorna quello che mi deve ritornare.
Nella tabella ci sono 2 tuple con data 26/04/2010 a due orari diversi.
Ho provato a creare un mini db (esterno ad android), con una tabella con 2 campi: id e data, ho riempito due righe e ho eseguito questa funzione con il tool sql3:
select * from prova where data = '26/04/2010';
e non mi ha mostrato nulla, poi ho provato:
select * from prova where data > '26/04/2010' and data < '27/04/2010';
e
select * from prova where data between '26/04/2010' and '27/04/2010';
e tutti e due mi han dato il risultato che volevo ma su android no.