¿Hay alguna forma de convertir una date en una cadena en Sqlite? Por ejemplo, estoy tratando de get la date mínima en Sqlite:
SELECT MIN(StartDate) AS MinDate FROM TableName
Sé en SQL Server que utilizaría el SQL a continuación para lograr lo que estoy tratando de hacer:
SELECT CONVERT(VARCHAR(10), MIN(StartDate), 101) AS MinDate FROM TableName
¡Gracias!
Prueba esto:
SELECT MIN(DATE('your-date-here')) as MinDate FROM TableName
Y asegúrese de que su date aquí siga un formatting bien entendido por SQLite (Consulte la sección de Time String en la documentation)
SQLite no tiene un tipo de date. Lo que CURRENT_TIMESTAMP
realmente devuelve es una cadena con el formatting YYYY-MM-DD HH:MM:SS
. Las funciones de formateo / cálculo de date / hora aceptan cadenas en este formatting, o alternativamente, numbers, que se interpretan como dates julianas a less que use el modificador 'unixepoch' .
Por lo tanto, "convertir una date en una cadena" depende de cómo se almacenan las dates:
DATE(YourDateColumn)
. DATE(YourDateColumn, 'unixepoch')
. STRFTIME
. En los tres formattings de date, el order cronológico es el mismo que el order lexicográfico, por lo que la function MIN
funciona como se esperaba.
¡¡testing esto!!
SELECT * FROM Table WHERE strftime('%Y-%m-%d',CreatedAt) BETWEEN '2014-10-07' AND '2014-10-17'