首页 > 解决方案 > 根据时间戳获取数据库中的数据

问题描述

我正在使用这种格式的时间戳

    date_default_timezone_set('Asia/Manila');
    $date= date('F d, Y');
    $time= date('h:i:s A');

它像这样保存数据

November 5, 2019 12:46:03 AM

现在,我想获取并回显每月数据、每周和每年数据。

我尝试使用 LIKE '$date%' 但每周都无法使用它。

在这个日期的情况下,我想获取 2019 年 11 月 5 日和之前六天的数据(使其成为一周)我通过将其保存在另一列中并在 where 语句中使用它来解决每月和每年的数据,但我不知道如何在获取每周数据时做到这一点

标签: mysqlsql

解决方案


您似乎将日期存储为字符串。只是不要。如果您有日期,请使用相关的数据类型将它们存储在您的数据库中:在 MySQL 中,您需要datetime数据类型。

在 php 中,您可以使用格式说明符生成正确的 MySQL 日期时间'Y-m-d H:i:s'

有了这个设置,就可以很容易地应用您正在寻找的过滤器:

 mydate >= '2019-11-05' - interval 6 day and mydate <= '2019-11-05'

推荐阅读