MySQL:今天谁在 2 个不同日期之间“开启”

Posted

技术标签:

【中文标题】MySQL:今天谁在 2 个不同日期之间“开启”【英文标题】:MySQL: Who are today "on" between 2 different dates 【发布时间】:2009-12-19 16:55:14 【问题描述】:

我有一个 mysql 问题。 (我使用 php)。

例如我有这种数据库:

姓名 |开始和 |将结束 杰森 | 2009-12-17 | 2009-12-24 埃里克 | 2009-12-12 | 2009-12-30 玛丽亚 | 2010-01-02 | 2010-01-10

对于 mysql(或 php)问题,我想获取现在(2009 年 12 月 19 日)“开启”的人的姓名。

答案应该是: 杰森 埃里克

提前感谢您的大力帮助!

【问题讨论】:

【参考方案1】:

比较日期的查询怎么样?

我想应该是这样的:

select name
from your_table
where started <= curdate() 
    and will_end >= curdate()

注意事项:

当然,您需要调整表名和列名 也许你会想使用&gt;&lt;而不是&gt;=&lt;=;取决于您的数据。 我使用curdate() 函数,它获取当天的日期——我更喜欢它而不是使用一些 PHP 代码将日期注入查询中。

【讨论】:

【参考方案2】:
SELECT *
  FROM `table`
 WHERE CURDATE() BETWEEN `startdate` AND `enddate`

【讨论】:

以上是关于MySQL:今天谁在 2 个不同日期之间“开启”的主要内容,如果未能解决你的问题,请参考以下文章

如果它在两个不同的日期之间,如何选择今天的日期[重复]

今天和更早的日期之间的SQL

两个日期之间的特定天数

如何查找结果是否在lucene索引中的2个日期之间下降?

如何使用活动记录查询sql以获取指定时间之间的日期

jQuery DatePicker:点击今天然后完成时,不保留今天的日期