【问题标题】:MYSQL reverse engineering EXTRACT()MYSQL 逆向工程 EXTRACT()
【发布时间】:2016-04-28 03:54:30
【问题描述】:

我有一个类似2014-12-30 的日期字段,我做了类似EXTRACT(YEAR_MONTH FROM date) as yr_month 的操作,它返回了类似201412 的值。

我想从这个新值中检索月份,将其逆向工程回该月份。我试过MONTH(yr_mnth)MONTH(RIGHT(yr_mnth, 2))

关于如何从该字段中检索月份有什么想法吗?

【问题讨论】:

  • 有什么理由不使用 MONTH()?
  • 原始日期字段不是我想要的。提取是在MIN(date) 上完成的,表示客户成为客户的“群组”。我可以回去进行一些编辑,但是由于这个 EXTRACT() 在月份和年份上的数据聚合得很好。除非不可能,否则我更愿意找到使用 EXTRACT 的解决方案。
  • 也许这对您的旅程有所帮助:STR_TO_DATE(yr_mnth,'%Y%m')
  • 为什么需要打电话给MONTH()RIGHT(yr_month, 2)不返回你想要的吗?

标签: mysql sql


【解决方案1】:

尝试以下方法:

SELECT MONTHNAME(STR_TO_DATE(RIGHT(yr_mnth, 2), '%m'));

这将为您从月份编号中获取月份名称。正如你在这里看到的:MySQL MONTHNAME() from numbers

【讨论】:

    猜你喜欢
    • 2012-08-26
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    相关资源
    最近更新 更多