gpt4 book ai didi

mysql - SQL - 将列类型从文本更改为日期和时间

转载 作者:行者123 更新时间:2023-11-30 22:58:43 25 4
gpt4 key购买 nike

我有一个包含两列的表,我想更改它们的数据类型。两者目前都只是声明为文本,但我想将 DateSent 更改为日期,将 TimeSent 更改为时间。数据目前的日期格式为 MM/DD/YYYY,时间格式为 HH:MM (24h)。

如何做到这一点?当我以后添加数据时,它会自动正确转换任何合理的日期和时间格式吗?

最佳答案

您不能一步完成此操作。您需要做的是为您的日期添加一个新列,然后使用将字符串转换为日期的 UPDATE 语句填充它;使用 CAST('mm/dd/yyyy' 作为日期)。然后您可以删除旧列,并重命名新列。

保存时间数据的列的步骤相同。

您将来需要以正确的类型添加新数据;日期或时间。


根据 OP 请求,我将使用示例查询编辑 Mark 的回答

示例更新查询:

UPDATE table_name t,
(
SELECT
id,
CAST(col1 AS DATE) as update_col1
CAST(col2 AS TIME) as update_col2
FROM table_name
) as t1
SET t.col1 = t1.update_col1, t.col2 = t1.update_col2
WHERE t.id = t1.id

关于mysql - SQL - 将列类型从文本更改为日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25040172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com