首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在mysqli查询中只比较(Y-m-d)

问如何在mysqli查询中只比较(Y-m-d)
EN

Stack Overflow用户
提问于 2014-09-01 10:09:34
回答 6查看 3.7K关注 0票数 2

在Mysql数据库中,我有一个名为"time“的字段,其中包括mysql时间戳(Y-m-d H:i:m)。现在,我想检查一下表中是否有一个值,这是从今天开始的。时间不重要。

到目前为止我的疑问是:

代码语言:javascript
复制
$date = date("Y-m-d");
$select = mysqli_query($sql, "SELECT id FROM table WHERE time => '".$date."' LIMIT 1");
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-09-01 10:11:54

MYSQL中的Date()提取日期部分或日期时间表达式“时间戳字段”。

语法:

代码语言:javascript
复制
DATE(timestampfield)

因此,尝试使用以下查询:

代码语言:javascript
复制
$select = mysqli_query($sql, "SELECT id FROM table WHERE DATE(time) = '$date' LIMIT 1");
票数 1
EN

Stack Overflow用户

发布于 2014-09-01 10:13:45

您可以使用mysql函数DATE()来比较日期。

代码语言:javascript
复制
$select = mysqli_query($sql, "SELECT id FROM table WHERE DATE(time) >= '".$date."' LIMIT 1");

这是对我有用的。

票数 3
EN

Stack Overflow用户

发布于 2014-09-01 10:49:50

最好以日期格式转换这两个项,以比较日期而不是字符串:

代码语言:javascript
复制
$date = date("Y-m-d");
$select = mysqli_query($sql, "SELECT id FROM table WHERE DATE(time) => DATE('".$date."') LIMIT 1");

另外,请考虑使用param,尽管这里不是SQL的情况。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25603449

复制
相关文章

相似问题

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