Usando la función strftime de sqlite en android
Hola, he insertado algunas fechas en mi base de datos.
Cuando uso sqlite3 en el formato YYY-MM-DD
en otra tabla cuando hago mi consulta como
- ¿Cómo obtener el ID guardado en SugarORM?
- Acceda a la base de datos en una clase que no sea de actividad
- Copia de seguridad de un SQLiteDatabase en memoria a un archivo
- ¿Cómo funciona un cursor SQLite trabajar internamente?
- Obtener cuenta con cursor.getCount () o para ejecutar un rawQuery con un COUNT en una cláusula SQL?
SELECT * FROM SDay WHERE strftime('%Y-%m-%d', date)>=strftime('%Y-%m-%d','2013-02-21') AND strftime('%Y-%m-%d', date)<strftime('%Y-%m-%d','2013-09-15')
Funciona muy bien.
Por otro lado, cuando uso el formato YYY-MM
en otra tabla, entonces el
SELECT * FROM SMonth WHERE strftime('%Y-%m', date)>=strftime('%Y-%m','2013-02') AND strftime('%Y-%m', date)<strftime('%Y-%m','2013-09')
¿Por qué sucede y cómo podría arreglarlo?
Gracias.
- En android sdk1.5 donde encontrar mi Sqlite Db en mi sistema
- Tratar con WHERE IN (?) En la consulta de SQLite de SQL
- Cómo eliminar todos los elementos de SQLite en Android
- Establecer el valor predeterminado de una columna de enteros SQLite
- IllegalStateException: obtiene la ranura de campo de la fila 0 col -1 falló
- Android sqlite ordenar en la columna calculada (coordina la distancia)
- Consulta SQLite de Android con clave externa utilizando la tormenta o una alternativa
- No se puede INSERTAR en SQLite, Código de error: 19
En su segunda instrucción, strftime
se proporciona con una timestring
no timestring
. Esto hace que la función devuelva NULL
:
sqlite> .nullvalue <NULL> sqlite> select strftime('%Y-%m','2013-02'); <NULL>
Simplemente agregue el día a la fecha que proporcione y funcionará correctamente:
sqlite> select strftime('%Y-%m','2013-02-01'); 2013-02
Aquí puede encontrar una lista de formatos de timestring
de tiempo válidos.
- Dos dedos o pinc zoom a mapview en osmdroid
- ¿Cómo agregar la función Compartir a la aplicación para Android con Corona SDK?