首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >根据时间戳过滤sql结果

根据时间戳过滤sql结果
EN

Stack Overflow用户
提问于 2018-06-17 07:46:47
回答 2查看 8.3K关注 0票数 3

我有以下代码

$thedate = "2018-06-04"; // YYYY-MM-DD

SELECT * 
FROM (`leadactivity`) 
WHERE statusdate = $thedate 
ORDER BY id DESC 
LIMIT 25

我试图只显示statusdate为=到提供的日期的结果。但是,因为在sql中,列使用Timestamp自动更新,所以它包含了时间,并且由于某种原因没有给出任何结果。

你知道我做错了什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-17 12:08:09

您的代码看起来像MySQL。一种简单的方法是:

SELECT la.*
FROM leadactivity la
WHERE DATE(la.statusdate) = $thedate 
ORDER BY id DESC
LIMIT 25;

但是,使用DATE()函数会阻止索引的使用。因此,更好的方法是:

SELECT la.*
FROM leadactivity la
WHERE la.statusdate >= $thedate AND la.statusdate < $thedate + interval 1 day
ORDER BY la.id DESC
LIMIT 25;
票数 2
EN

Stack Overflow用户

发布于 2018-06-17 07:54:45

试试这个:

          SELECT * FROM (`leadactivity`) 
          WHERE  statusdate like  '%"$thedate"%' 
          ORDER BY id DESC LIMIT 25
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50892582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档