【问题标题】:mysql select date inside a date range [duplicate]mysql在日期范围内选择日期[重复]
【发布时间】:2013-04-02 15:37:47
【问题描述】:

我有以下列:

  • date_start |日期结束
  • 2013-01-14 | 2013-01-16
  • 2013-01-16 | 2013-03-18
  • 2013-01-22 | 2013-03-21
  • 2013-02-02 | 2013-02-10
  • 2013-03-25 | 2013-03-28

我需要创建一个可以过滤这些记录的 sql 语句

date_start: 2013-01-17 date_end:2013-03-22

找到的结果是:

  • date_start |日期结束
  • 2013-01-16 | 2013-03-18
  • 2013-01-22 | 2013-03-21
  • 2013-02-02 | 2013-02-10

有人知道怎么做吗?

谢谢

【问题讨论】:

标签: mysql sql select


【解决方案1】:

试试这个

 select * from your_table where date_start >=  '2013-01-17'
                          and   date_end   <=  '2013-03-22'

【讨论】:

    【解决方案2】:
    SELECT *
    FROM table
    WHERE date_start BETWEEN '2013-01-17' AND '2013-03-22'
      AND date_end BETWEEN '2013-01-17' AND '2013-03-22'
    

    【讨论】:

      【解决方案3】:
      SELECT * FROM `table` WHERE `date_start` > '2013-01-17' && `date_end` < '2013-03-22'
      

      您需要将table 替换为您在数据库中的实际表名。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-17
        相关资源
        最近更新 更多