【问题标题】:SQL - Convert BIGINT(20) to datetime datatypeSQL - 将 BIGINT(20) 转换为日期时间数据类型
【发布时间】:2020-09-07 17:29:28
【问题描述】:

在 mysql 工作台中,我的表中有一个 id 列,其数据类型为 bigint:

id BIGINT(20)

此列将日期时间保存为 bigint。

为了更清楚,该列包含一个值,例如:

20190529230339 

我需要将其转换为日期时间数据类型以显示为:

2019-05-29 23:03:39

【问题讨论】:

    标签: sql datetime type-conversion mysql-workbench


    【解决方案1】:

    你可以使用STR_TO_DATE,首先将 bigint 数字转换为文本:

    SELECT
        field,
        STR_TO_DATE(CAST(field AS CHAR(14)), '%Y%m%d%H%i%s') AS field_datetime
    FROM yourTable;
    

    Demo

    【讨论】:

      【解决方案2】:

      STR_TO_DATE 可以解决问题:

      SELECT CONVERT(STR_TO_DATE('20130101 1130','%Y%m%d %h%i'),DATETIME);

      我使用 Convert 而不是 Cast

      2013-01-01 11:30:00

      【讨论】:

        猜你喜欢
        • 2019-10-03
        • 1970-01-01
        • 2018-06-06
        • 2015-06-18
        • 2011-04-08
        • 2020-04-21
        • 2021-05-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多