【问题标题】:SQL query to parse a string and compare the value with today's date用于解析字符串并将值与今天的日期进行比较的 SQL 查询
【发布时间】:2020-12-08 18:20:34
【问题描述】:

我有一个数据字段的值:2020Q3、2020Q4、2021Q1、2021Q2 等,我需要比较今天的日期 > SQL 中的数据字段值。例如,今天的日期 > 2020Q3 应该返回 true。今天的日期 > 2020Q4 应该返回 false。

我尝试了字符串标记器来解析和比较,但没有运气。请指教。谢谢!

【问题讨论】:

  • 我认为您应该将日期存储到日期列中,因为编写sql根据它可以理解和简单处理的字段输出2020Q3格式会更容易

标签: mysql sql stringtokenizer


【解决方案1】:

如果您有 'YYYY"Q"Q' 之类的值,您可以使用以下方法获取季度的开始日期:

select date(concat(left(yyyyq, 4), '-01-01')) + interval 3 * (right(yyyyq, 1) - 1) month
from (select '2020Q3' as yyyyq) t

然后添加三个月作为结束日期。我不太确定您是如何解释 > 的,但该信息应该可以为您提供比较所需的信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-24
    • 1970-01-01
    • 2013-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    相关资源
    最近更新 更多