【问题标题】:Cordova Javascript SQLite Order By DateTimeCordova Javascript SQLite 按日期时间排序
【发布时间】:2021-04-22 12:28:39
【问题描述】:

如何选择和排序日期时间?

我的查询:

SELECT id, title, note, lastUpdated, dateCreated FROM notes ORDER BY datetime(lastUpdated) DESC

我的桌子:

CREATE TABLE IF NOT EXISTS notes (
    id INTEGER PRIMARY KEY AUTOINCREMENT, 
    title TEXT NOT NULL, 
    note TEXT, 
    lastUpdated DATETIME,
    dateCreated DATETIME DEFAULT CURRENT_TIMESTAMP)`

我的插入:

INSERT INTO notes (
    title, note, lastUpdated) 
VALUES (?1,?2,?3)`, [$scope.note.title, $scope.note.note, new Date()]

我用 javascript new Date() 插入日期。

如果我打印此选择查询的结果:

SELECT id, title, note, lastUpdated, dateCreated FROM notes ORDER BY datetime(lastUpdated) DESC

结果如下所示:

dateCreated:'2021-01-17 09:24:13'
id:1
lastUpdated:'Mon Jan 18 2021 00:37:36 GMT-0700 (Mountain Standard Time)'
note:'Test'
title:'Title'

【问题讨论】:

  • lastUpdated 列的格式没有可比性。将其更改为 YYYY-MM-DD hh:mm:ss。
  • 是的,我必须将插入更改为CURRENT_TIMESTAMP

标签: javascript node.js sqlite cordova


【解决方案1】:

试试这个:

INSERT INTO notes (
    title, note, lastUpdated) 
VALUES (?1,?2,?3)`, [$scope.note.title, $scope.note.note, new Date().toISOString()]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-14
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多