【问题标题】:How can I filter records according to current date?如何根据当前日期过滤记录?
【发布时间】:2019-10-09 07:29:05
【问题描述】:

我正在实现一个功能,我以字符串形式存储日期,并使用 LocalDate 函数获取字符串中的当前日期,所以我想比较两个日期,我只想获取当前日期记录。

未找到错误但无法获取记录。

  public ArrayList<Followup_Model> followup_reminder (ArrayList<Followup_Model> followup_Model_list) {
    if (followup_Model_list == null) {
        followup_Model_list = new ArrayList<>();
    }
    SQLiteDatabase sqLiteDatabase = this.getReadableDatabase();
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
    LocalDate localDate = LocalDate.now();
    String Today = dtf.format(localDate);
    Cursor followup_output = sqLiteDatabase.rawQuery("SELECT * FROM " + Table_Name_Followup +
            " WHERE CREATEDBY = '1' AND CHECKED = '1' AND STARTDATE = " + Today +
            " ORDER BY REMINDER ASC",null);

【问题讨论】:

  • 尝试用单引号将日期括起来
  • @ScaryWombat 日期不固定它正在进入变量我如何将它放入单引号
  • AND STARTDATE = '" + Today + "'" + 或更好地使用 PreparedStatement 并使用参数

标签: java android sqlite date


【解决方案1】:

只需复制和粘贴。

public ArrayList<Followup_Model> followup_reminder (ArrayList<Followup_Model> 
 followup_Model_list) {
    if (followup_Model_list == null) {
        followup_Model_list = new ArrayList<>();
    }
    SQLiteDatabase sqLiteDatabase = this.getReadableDatabase();
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
    LocalDate localDate = LocalDate.now();
    String Today = dtf.format(localDate);
    Cursor followup_output = sqLiteDatabase.rawQuery("SELECT * FROM " + Table_Name_Followup +
            " WHERE CREATEDBY = '1' AND CHECKED = '1' AND STARTDATE = '" + Today + "'" +
            " ORDER BY REMINDER ASC",null);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多