gpt4 book ai didi

mysql - 数据在行的 startDate1 列被截断

转载 作者:太空宇宙 更新时间:2023-11-03 10:52:32 28 4
gpt4 key购买 nike

我有 2 列开始日期和结束日期,类型为 int。这些列用于存储时间戳数据。

现在我必须从这个时间戳中提取日期部分,将它转换回时间戳并将它存储在另一列 startdate1 类型的 int

但是在执行此操作时,我收到警告“数据在行的 startDate1 列被截断”。

sql 查询是:-

ALTER TABLE `ServiceRule` ADD COLUMN `startDate1` INT(11) NULL DEFAULT NULL  AFTER `endDate` , ADD COLUMN `endDate1` INT(11) NULL DEFAULT NULL  AFTER `startDate1`;

update `ServiceRule` set `startDate1`= TIMESTAMP(DATE(from_unixtime(`startDate`)));
update `ServiceRule` set `endDate1`= TIMESTAMP(DATE(from_unixtime(`endDate`)));

现在,如果我将 startDate1 和 endDate1 的数据类型更改为 TIMESTAMP,startDate1 的第一个更新查询将成功运行。但是 endDate1 更新查询显示警告“行中‘endDate1’列的值超出范围”。

浏览解决方案后,我知道如果输入值大于列数据类型范围,就会发生这种情况。

有人可以帮帮我吗?提前致谢。 :)

最佳答案

我想你想要的是 UNIX_TIMESTAMP 而不是 TIMESTAMP

UNIX_TIMESTAMPFROM_UNIXTIME 的反函数。

关于mysql - 数据在行的 startDate1 列被截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23422818/

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