比如我有个用SQLite Studio创建的Sqlite3类型数据库,里面有个表名为StatisticsData的表结构是 :

-- 表:StatisticsData
CREATE TABLE "StatisticsData" ( "Id" TEXT NOT NULL, "MachineName" NVARCHAR, "SessionId" INTEGER, "ProcessId" INTEGER, "ProcessName" NVARCHAR, "ProcessRunningStatus" NVARCHAR, "WorkingSetMemory" NVARCHAR, "WorkingSetPrivateMemory" NVARCHAR, "WorkingSetPeak" NVARCHAR, "ThreadCount" NVARCHAR, "HandleCount" NVARCHAR, "TotalProcessorTime" NVARCHAR, "UserProcessorTime" NVARCHAR, "PrivilegedProcessorTime" NVARCHAR, "StartTime" DATETIME, "ExitTime" DATETIME, "Domain" NVARCHAR, "UserName" NVARCHAR, "FileName" NVARCHAR, "Arguments" NVARCHAR, "WorkingDirectory" NVARCHAR, "CreatedTime" DATETIME, PRIMARY KEY ("Id" ASC), CONSTRAINT "PK_Id" UNIQUE ("Id" ASC) )

举例:

今天是2017-08-10,要删除7天前的数据,也就是说,所有小于等于2017-08-03都要被删掉。

写法1:忽略时间精度,直接比较日期,删除N天前的数据。

DELETE FROM StatisticsData WHERE date('now', '-7 day') >= date(CreatedTime);

 写法2:计算时间精度,比较日期和时间,删除N天前的数据。

DELETE FROM StatisticsData WHERE julianday('now') - julianday(CreatedTime) >= 7;

有关时间运算和比较函数的官方教程:http://www.sqlite.org/lang_datefunc.html

翻译自官网的中文参考:http://www.cnblogs.com/ygm900/p/4460644.html

SQLite的时间差判断--删除N天前的数据的两种写法的更多相关文章

  1. ElasticSearch 定时批量删除N天前的数据

    描述: 之前我已经完成了使用ElasticSearch.kibana.filebeat.三个工具完成分布式集群收集 分布在各个ip地址上的微服务日志,这样就可以统一的在一个服务器上查看了所有的微服务产 ...

  2. linux命令行删除N天前的数据的命令

    命令:  find . -mtime +N -type f -name "*.log.*" -exec rm -f {} \; 简单解释: find .查询  ; -mtime 规 ...

  3. Delphi Windows API判断文件共享锁定状态(OpenFile和CreateFile两种方法)

    一.概述 锁是操作系统为实现数据共享而提供的一种安全机制,它使得不同的应用程序,不同的计算机之间可以安全有效地共享和交换数据.要保证安全有效地操作共享数据,必须在相应的操作前判断锁的类型,然后才能确定 ...

  4. MySQL中删除数据的两种方法

    转自:http://blog.csdn.net/apache6/article/details/2778878 1. 在MySQL中有两种方法可以删除数据: 一种是delete语句,另一种是trunc ...

  5. oracle删除表数据的两种的方式

    转自:https://blog.csdn.net/qq_37840993/article/details/82490787 平时写sql中我们都会用到删除语句,而平时删除表数据的时候我们经常会用到两种 ...

  6. 判断python字典中key是否存在的两种方法

    今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实现. 在python的字典的属性方法里面有一个has_key()方法,这个方法使 ...

  7. shell脚本if判断语句报错[: too many arguments的两种原因

    shell脚本,if判断语句报错[: too many arguments 我遇到过两种情况: 1.第一中情况就是网上大家说的,字符串变量中可能存在空格,shell解析时将其认为是多个参数,再进行判断 ...

  8. sql server创建临时表的两种写法和删除临时表

    --创建.删除临时表 --第一种方式 create table #tmp(name varchar(255),id int) --第二种方式 select count(id) as storyNum ...

  9. (转)js在数组中删除重复的元素自保留一个(两种实现思路)

    例如:var student = [‘qiang','ming','tao','li','liang','you','qiang','tao']; 第一种思路是:遍历要删除的数组arr, 把元素分别放 ...

随机推荐

  1. 某公司面试java试题之【一】,看看吧,说不定就是你将要做的题

  2. Linux下常见命令

    =============挂载和登陆命令======================================== Mount:挂载命令. 比方挂载光驱mount /dev/cdrom /mnt ...

  3. SpringMVC工作原理 : HandlerMapping和HandlerAdapter

    一.HandlerMapping 作用是根据当前请求的找到对应的 Handler,并将 Handler(执行程序)与一堆 HandlerInterceptor(拦截器)封装到 HandlerExecu ...

  4. pymysql操作mysql

    一.使用PyMySQL操作mysql数据库 适用环境 python版本 >=2.6或3.3 mysql版本>=4.1 安装 可以使用pip安装也可以手动下载安装.使用pip安装,在命令行执 ...

  5. phantomjs 是什么?----主要是mac下面

    phantomjs 是什么? PhantomJS是一个无界面的,可脚本编程的WebKit浏览器引擎.它原生支持多种web 标准:DOM 操作,CSS选择器,JSON,Canvas 以及SVG. pha ...

  6. Educational Codeforces Round 1

    598A - Tricky Sum    20171103$$ans=\frac{n(n+1)}{2} - 2\sum_{k=0}^{\left \lfloor \log_2 n \right \rf ...

  7. 七牛 OCR 接口调试 & 七牛鉴权 Token 应用

    接口规约 PHP 实现 核心代码 执行结果 源代码 Java 实现 核心代码 执行结果 源代码 [现学现卖]图片内容审核接口 Python 实现 核心代码 执行结果 源代码 Go 实现 核心代码 执行 ...

  8. 前端自动化构建工具webpack (一)之webpack安装 和 设置webpack.confi.js

    目的:  模块化开发,组件化开发,让代码符合开发规范,更高效 webpack作用:从pack,就知道这是包的意思,比较专业点叫做前端自动化打包构建工具,代码错误检查,预处理,文件合并(打包),代码压缩 ...

  9. 【node】mongoose的基本使用

    1.安装mongoose npm install mongoose 2.启动数据库 mongod --dbpath d:\data\db 3.引入mongoose模块并连接数据库 const mong ...

  10. PHP(方法 函数 循环 和 数组 查找)

    循环 和 数组 查找 顺序查找 二分法查找 冒泡排序 方法 函数 定义:一堆代码的集合叫做函数(满足条件下“一堆”) 语法,定义,调用,参数列表(形参,实参),返回值 两种方法: function 方 ...