从 MySQL 中根据日期选择记录

Posted

技术标签:

【中文标题】从 MySQL 中根据日期选择记录【英文标题】:Selecting records based on date from MySQL 【发布时间】:2014-04-23 09:48:33 【问题描述】:

我的表格中有两列是 ID,日期。 date 是日期时间戳(例如:2014-04-01 02:30:00)。

我想根据日期 (2014-04-01) 返回所有记录,而不是给出整个时间戳。我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:

如果您不关心索引,请使用以下内容:

select Id from table where DATE(date) = '2014-04-01'

否则

select Id from table where date between '2014-04-01 00:00:00' and '2014-04-01 23:59:59'

【讨论】:

【参考方案2】:

试试Thiz

select id from table where DATE(date)='2014-04-01';

【讨论】:

【参考方案3】:

试试这个

SELECT p
FROM Customer p
WHERE code =?1
  AND DATE_FORMAT(time, '%Y%m%d') BETWEEN "2014-04-01" AND "2014-04-30"

【讨论】:

我已使用此查询来选择日期范围内的记录,例如开始日期和结束日期。@NamedQuery(name="Customer.CustomerLoyalityByCodeAndTime", query = "SELECT p FROM Customer p WHERE code =?1 AND time BETWEEN ?2 AND ?3") 以同样的方式,我希望无论时间如何,所有记录都具有相同的日期。我只想输入日期而不是时间

以上是关于从 MySQL 中根据日期选择记录的主要内容,如果未能解决你的问题,请参考以下文章

如何根据 MySQL 中的最大日期仅选择左表的一条记录?

Mysql,根据日期选择行

SQL 根据当前日期减去两天选择记录

从汇总的 MySQL 记录中选择

MySQL 如何从今天记录的表中选择数据?

根据上次日期选择记录