你好朋友我想檢索2個日期之間的數據。我使用sql之間的子句它工作正常,當兩個日期是2位數字或單一。
例如:如何檢索android.sqlite中的兩個日期之間的數據
SELECT * FROM EXPENSE WHERE EXP_DATE BETWEEN '20-12-2012' AND '21-12-2012'
此查詢工作正常,但如果我使用日期'9-12-2012' AND '20-12-2012'
它不工作.. returns null
你好朋友我想檢索2個日期之間的數據。我使用sql之間的子句它工作正常,當兩個日期是2位數字或單一。
例如:如何檢索android.sqlite中的兩個日期之間的數據
SELECT * FROM EXPENSE WHERE EXP_DATE BETWEEN '20-12-2012' AND '21-12-2012'
此查詢工作正常,但如果我使用日期'9-12-2012' AND '20-12-2012'
它不工作.. returns null
嘗試此查詢。這個對我有用。
db.query(EXPENSE_TABLE_NAME, new String[]{"*"},
"(EXP_DATE >= ? and EXP_DATE <= ?)" , new String[] {startDate,endDate}, " strftime(" + "\"%d" + "-" + "%m" + "-" + "%Y\"" + ",EXP_DATE) ",null ,null);
'strftime'生成零填充字段;這不是該數據庫中使用的格式。 –
@CL。它僅適用於dateformat。 –
以更好的格式存儲日期 - 例如, ISO8601 - 這是很好的排序和*不*在一個區域特定的格式。在SQLite [數據類型頁面](http://www.sqlite.org/datatype3.html)上討論了3種不同的策略! SQLite不*具有「日期時間」類型,所以*沒有*自動轉換。 – 2012-12-03 07:44:30
更改日期格式並解決問題。 – AndroGeek