我将数据和模式从xml文件导入mysql。我在很多表中都有以下列:
DateStart tinytext
DateEnd tinytext
它的格式看起来像一个时间戳。 2006-06-01T00:00:00-05:00
其中一些值也是 null
. 我需要一个方法来转换这个 tinytext
将时间戳转换为普通mysql datetime
但我不确定怎么做。
我试着创建一个新的专栏 my_date_time
那是一个 datetime
键入并尝试按如下方式转换每个值:
UPDATE table SET my_date_time = str_to_date(DateStart, '%Y-%m-%d');
但是,这给了我以下错误:
Data truncation: Incorrect date value: '2006-09-01T00:00:00-05:00' for column 'DateStart' at row 1
如何转换这些列的所有行中的所有值?
1条答案
按热度按时间m1m5dgzv1#
您可以创建一个新字段:
或者可以使用以下方法向表中添加新列:
你可以扮演
DATE
而不是DATETIME
如果你只想知道日期。不过,这不会影响时区。
如果有不同时区的值,则可以使用:
只有当时区中的所有更改都是完整的小时(而不是半小时)时,这才有效。
希望有帮助