文章出處

比如我有個用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


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()