如何在DATETIME格式化列

时间:2017-03-11 00:41:53

标签: php datetime sqlite

我安装了一个带有 apache2 / sqlite3 / php5.5 的raspberry pi 3。 数据库创建 dbname.db ,在表 temps 中有两列。

  • 名为temp。
  • 的第一列商店临时文件
  • 第二列以(DATETIME)格式存储日期和时间 (YYYY-MM-DD HH:MM:SS)命名为时间戳。

在我的php文件中我有

<?php
        ..
        //get all data from temps
        $result1 = $db->query("SELECT * FROM temps");
        //get last 1 day data from temps
        $result2 = $db->query("SELECT * FROM temps WHERE timestamp >= datetime('now','-1 day')");
        ...    
    ?>
  1. 我需要一个查询来返回过去天的时间 用户可以选择数字。例如,如果用户选择9,i 需要最近9天的温度。
  2. 另外我怎么能跟时间做同样的事情?比如说我 在(00:00:00和13:00:00)之间需要温度。
  3. 最后我如何将日期和时间结合在一起。例如我可以说我需要(00:00:00到13:00:00)之间的温度(2017-03-01)

1 个答案:

答案 0 :(得分:-1)

使用AND - 也许使用BETWEEN

SELECT * FROM `temps`
WHERE `timestamp` BETWEEN NOW() AND INTERVAL 1 DAY
AND TIME(`timestamp`) BETWEEN '00:00:00' AND '13:00:00'