在SQLite中将字符串转换为日期并与当前日期进行比较

时间:2017-12-18 10:01:00

标签: sqlite

CREATE TABLE `FormMapping` (
    `PatNum`    TEXT,
    `FormName`  TEXT,
    `SheetNum`  TEXT,
    `IsCompleted`   TEXT,
    `RecordDate`    TEXT,
    `FormOrder` TEXT,
    PRIMARY KEY(`PatNum`,`SheetNum`)
);

以上是我的表结构

RecordDate formate是“MM / dd / yyyy”

如何在日期中转换“RecordDate”并与SQLite中的当前日期进行比较?

提前致谢

2 个答案:

答案 0 :(得分:3)

经过太多努力后我解决了问题,查询如下,

DELETE FROM FormMapping WHERE strftime(substr(RecordDate, 7, 4) ||'-'||substr(RecordDate, 1, 2) ||'-'|| substr(RecordDate, 4, 2)) < DATE('now','-7 day')

感谢大家的支持。

答案 1 :(得分:-1)

您可以尝试转换当前日期,然后将其与db

中的值进行比较
 public static String simplerDate() {

        try {
            Date currentTime = Calendar.getInstance().getTime();
            return new SimpleDateFormat("MMM dd ''yy, HH:mm", Locale.ENGLISH).format(date);
        } catch (ParseException pe) {
            //Log.i(Utils.class.getSimpleName(), "simplerDate: " + pe);
            return "N/A";
        }
    }