[英]Flutter - SQFlite query of period between two dates does not return data
我正在從 Flutter 應用程序執行數據庫查詢,我需要在其中帶來兩個日期之間的記錄。 但是,即使在此期間保存了記錄,查詢也不會返回記錄。
下面的查詢返回零記錄:
final List<Map<String, dynamic>> records = await db.rawQuery(
'SELECT * FROM vehicles WHERE created BETWEEN 2022-07-17 AND 2022-08-16');
嘗試不使用如下 BETWEEN 子句也不起作用
final List<Map<String, dynamic>> records = await db.rawQuery(
'SELECT * FROM vehicles WHERE created >= 2022-07-17 AND created <= 2022-08-16');
我還強調“車輛”表的“已創建”列以以下格式存儲字符串日期:YYYY-MM-DD,並且控制台不會報告任何語法錯誤,它只是不起作用
我想問題是您沒有在日期中添加引號。 所以它應該是這樣的:
final List<Map<String, dynamic>> records = await db.rawQuery(
"SELECT * FROM vehicles WHERE created BETWEEN '2022-07-17' AND '2022-08-16'");
或像這樣:
final List<Map<String, dynamic>> records = await db.rawQuery(
"SELECT * FROM vehicles WHERE created >= '2022-07-17' AND created <= '2022-08-16'");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.