0

我想将今天的日期与 SqfLite 数据库中存储的日期进行比较,并在日期匹配时执行某些操作。

我的桌子:

Vara.fromJson(Map<String, dynamic> json){
    this.id = json[DatabaseCreator.id]; // int primary key
    this.varuNamn = json[DatabaseCreator.varuNamn]; //text
    this.utgangsDatum = json[DatabaseCreator.utgangsDatum]; //text
  }

到目前为止我的代码:

Future getVaraDate() async {
    DateTime now = new DateTime.now();
    var date = now.toString().substring(0,10);
    final sql = '''Select * from ${DatabaseCreator.varuTable} where ${DatabaseCreator.utgangsDatum} == "$date" ''';
    List<Map> result = await db.rawQuery(sql);
    // What to do here?

}

输出:

I/flutter ( 8118): [{id: 36000291452, varuNamn: hej, utgangsDatum: 2019-05-19, isDeleted: 0}]

我被卡住了,任何帮助将不胜感激!

4

1 回答 1

0

所以解决它的方法如下:

    Future getVaraByDate() async {
        DateTime now = new DateTime.now();
        var date = now.toString().substring(0,10);

        final sql = '''Select * from ${DatabaseCreator.varuTable} where ${DatabaseCreator.utgangsDatum} == "$date" ''';
        List<Map> result = await db.rawQuery(sql);
        if(result.isNotEmpty){
          var firstResult = result[0];
          var dateResult = firstResult.values.elementAt(2);
          return dateResult;
          print(dateResult);  
        } else {
          print("No matches");
        }
      }
于 2019-05-20T22:51:37.010 回答