比较数据库条目以仅获取今天的条目
Compare database entries to get only the ones from today
跟进这个问题:
我正在使用计算的 int 存储添加数据库条目的时间:
static int currentTimeInSeconds() {
var now = (DateTime.now()).millisecondsSinceEpoch;
return now;
}
并使用 database_manager.dart 文件中的以下内容获取 Water 数据库中 amount 列的总和:
Future<int> sumItems() async {
await openDb();
final sum = await _database.rawQuery("SELECT sum(amount) as sum FROM Water");
return sum[0]["sum"];
}
我如何在 sumItems() 函数中只 return 今天的项目?
在 where 子句中,您必须将 time
替换为您在 Table
中的列名
Future<int> sumItems() async {
DateTime now = new DateTime.now();
DateTime today = new DateTime(now.year, now.month, now.day);
DateTime endtoday = today.add(new Duration(days:1));
await openDb();
final sum = await _database.rawQuery("SELECT sum(amount) as sum FROM Water WHERE time >= '" + today.millisecondsSinceEpoch.toString() + "' AND time < '" + endtoday.millisecondsSinceEpoch.toString() + "'");
return sum[0]["sum"];
}
跟进这个问题:
我正在使用计算的 int 存储添加数据库条目的时间:
static int currentTimeInSeconds() {
var now = (DateTime.now()).millisecondsSinceEpoch;
return now;
}
并使用 database_manager.dart 文件中的以下内容获取 Water 数据库中 amount 列的总和:
Future<int> sumItems() async {
await openDb();
final sum = await _database.rawQuery("SELECT sum(amount) as sum FROM Water");
return sum[0]["sum"];
}
我如何在 sumItems() 函数中只 return 今天的项目?
在 where 子句中,您必须将 time
替换为您在 Table
Future<int> sumItems() async {
DateTime now = new DateTime.now();
DateTime today = new DateTime(now.year, now.month, now.day);
DateTime endtoday = today.add(new Duration(days:1));
await openDb();
final sum = await _database.rawQuery("SELECT sum(amount) as sum FROM Water WHERE time >= '" + today.millisecondsSinceEpoch.toString() + "' AND time < '" + endtoday.millisecondsSinceEpoch.toString() + "'");
return sum[0]["sum"];
}