【问题标题】:SQLite select records from last 24 hourSQLite 选择过去 24 小时的记录
【发布时间】:2017-10-29 20:05:50
【问题描述】:

我将这种数据结构存储在 SQLite DB 中:

我正在尝试在 php 代码中获取过去 24 小时的记录。

我使用了在类似问题中找到的以下查询:

SELECT temp FROM Sysstat 
WHERE when >= date('now', '-1 days') AND when < date('now')

但它似乎不起作用并给出错误:

警告:SQLite3::prepare(): Unable to prepare statement: 1, near "when": syntax error in..

谁能给我一些建议?

【问题讨论】:

    标签: php sqlite


    【解决方案1】:

    "[] 或反引号引用when

    SELECT temp 
    FROM Sysstat 
    WHERE "when" >= date('now', '-1 days') AND "when" < date('now');
    

    SQLite Keywords:

    关键字列表太长了,很少有人能全部记住。 对于大多数 SQL 代码,最安全的选择是永远不要使用任何英语单词作为用户定义对象的名称。

    如果要使用关键字作为名称,则需要引用它。

    "keyword" 双引号中的关键字是标识符。

    1. 何时

    【讨论】:

    • 谢谢,现在它运行没有错误,但返回 0 记录。所有记录都存储在“今天”,会不会有问题?
    • @sOnt date('now') => 2017-10-29 00:00:00 你所有的记录都在午夜之后。
    猜你喜欢
    • 2013-06-26
    • 1970-01-01
    • 2014-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-28
    相关资源
    最近更新 更多