【问题标题】:MySQL Select Dates While Format Is 00/0000MySQL 在格式为 00/0000 时选择日期
【发布时间】:2017-10-02 03:12:18
【问题描述】:

当日期格式为 00/0000(月为 00,年为 0000)时,如何从数据库中选择日期。

我想从数据库中选择超过 09/2017 的日期

【问题讨论】:

  • 您是否尝试过查询,您可以向我们展示一些数据吗?您是否将日期存储为文本?
  • 认真考虑将日期存储为日期

标签: mysql sql


【解决方案1】:

永远不要将日期存储为文本,始终使用日期列类型。如果您必须按原样继续,您可以尝试以下查询:

SELECT *
FROM yourTable
WHERE
    STR_TO_DATE(CONCAT('01/', date), '%d/%m/%Y') > '2017-09-01'

此查询使用STR_TO_DATE 从您的字符串数据构建一个正确的日期,然后将该日期与您想要的限制进行比较。

【讨论】:

    【解决方案2】:

    您可以使用 DATE_FORMAT() 提取月份和年份

    SELECT CONCAT(DATE_FORMAT(date_column, '%m'),'/', DATE_FORMAT(date_column, '%Y'))
    

    【讨论】:

      猜你喜欢
      • 2013-06-09
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      • 1970-01-01
      • 2013-07-12
      相关资源
      最近更新 更多