【问题标题】:how to join 2 separate text to one - selected from string - IN MySQL如何将 2 个单独的文本合并为一个 - 从字符串中选择 - 在 MySQL 中
【发布时间】:2012-03-13 06:18:19
【问题描述】:

我在字符串中有日期,例如“01.02.2012”,例如“DD.MM.YYYY”,我需要将其转换为DATE 或字符串,例如“YYYY-MM-DD”。

我试试:

SELECT SUBSTRING( txtdate, 7, 4 ) AS `year` , SUBSTRING( txtdate, 4, 2 ) AS `month` , 
SUBSTRING(txtdate, 1, 2 ) AS `day`
FROM info

所以我得到了年、月和日,现在我想将文本加入一个。 之后我就试试这个

SELECT CONCAT_WS('-',year,month,day);

但我得到一个错误..

【问题讨论】:

    标签: mysql string join substring


    【解决方案1】:

    很遗憾,您不能在字段定义列表中的其他位置引用别名字段。

    SELECT x AS a, CONCAT(y, a)
    

    不起作用。你必须使用

    SELECT CONCAT_WS('-', SUBSTRING(txtdate, 7, 4), SUBSTRING(...), SUBSTRING(...))
    

    或者,如果您将该日期存储在数据库中适当的 DATE 字段中,则很简单

    SELECT DATE_FORMAT('%Y-%m-%d', datefield)
    

    【讨论】:

      猜你喜欢
      • 2020-06-19
      • 1970-01-01
      • 1970-01-01
      • 2020-07-20
      • 2017-10-25
      • 2013-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多