如何将字符串(在三个单独的列中)转换为时间戳(一列)MYSQL
How to convert a string (in three separate columns) to a timestamp(one column) MYSQL
嗨,我是一名新程序员,我的 sql table 搞砸了。我没有使用时间戳来存储我的日期,而是在三个单独的列中创建了日期:日、月和年。我现在意识到我需要这些时间戳。所以我可以执行更复杂的查询。
这是我需要更新的样子:
UPDATE coding_tracker SET coded_at = column(day)"/"column(month_number(month))"/"column(year);
提前致谢
假设您的列名为日、month_number 和年,此查询应该有效:
UPDATE coding_tracker SET coded_at = STR_TO_DATE(CONCAT_WS('/', day, month_number, year), '%d/%m/%Y')
如果您的 month
列是名称,您可以将上述查询中的 %m
更改为 %b
以获取短月份名称 (Jan..Dec
) 或%M
用于长月份名称 (January..December
),例如对于长名称:
UPDATE coding_tracker SET coded_at = STR_TO_DATE(CONCAT_WS('/', day, month, year), '%d/%M/%Y')
有关 MySQL 手册 STR_TO_DATE
can be found in the DATE_FORMAT
部分的格式的文档。
嗨,我是一名新程序员,我的 sql table 搞砸了。我没有使用时间戳来存储我的日期,而是在三个单独的列中创建了日期:日、月和年。我现在意识到我需要这些时间戳。所以我可以执行更复杂的查询。
这是我需要更新的样子:
UPDATE coding_tracker SET coded_at = column(day)"/"column(month_number(month))"/"column(year);
提前致谢
假设您的列名为日、month_number 和年,此查询应该有效:
UPDATE coding_tracker SET coded_at = STR_TO_DATE(CONCAT_WS('/', day, month_number, year), '%d/%m/%Y')
如果您的 month
列是名称,您可以将上述查询中的 %m
更改为 %b
以获取短月份名称 (Jan..Dec
) 或%M
用于长月份名称 (January..December
),例如对于长名称:
UPDATE coding_tracker SET coded_at = STR_TO_DATE(CONCAT_WS('/', day, month, year), '%d/%M/%Y')
有关 MySQL 手册 STR_TO_DATE
can be found in the DATE_FORMAT
部分的格式的文档。