mysql - 根据时间戳获取数据库中的数据
问题描述
我正在使用这种格式的时间戳
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 语句中使用它来解决每月和每年的数据,但我不知道如何在获取每周数据时做到这一点
解决方案
您似乎将日期存储为字符串。只是不要。如果您有日期,请使用相关的数据类型将它们存储在您的数据库中:在 MySQL 中,您需要datetime
数据类型。
在 php 中,您可以使用格式说明符生成正确的 MySQL 日期时间'Y-m-d H:i:s'
。
有了这个设置,就可以很容易地应用您正在寻找的过滤器:
mydate >= '2019-11-05' - interval 6 day and mydate <= '2019-11-05'
推荐阅读
- azure-devops - Azure Devops 中的单个团队是否可以有多个积压工作?
- google-cloud-platform - 谷歌云防火墙
- javascript - b-card-img-lazy 未在未找到图像上触发错误事件
- javascript - 向对象添加新字段时遇到问题
- audiokit - Audiokit:(V5)音序器无法在轨道的同一位置同时播放音符
- java - 保存 ImageView 背景状态
- python - 基维不工作。[CRITICAL] [Window] 找不到任何有价值的 Window 提供程序
- javascript - 如何在反应中并排放置两个输入字段
- oop - Fortran 派生类型继承
- .net - .Net 核心项目中的 CodeCoverage -MSBuild 错误