【问题标题】:Update values in Mysql timestamp to a datetime value.将 Mysql 时间戳中的值更新为日期时间值。
【发布时间】:2012-12-21 22:09:48
【问题描述】:

我需要将 Mysql 时间戳中的值更新为日期时间值。例如,对于字段连接日期,当前字段类型是 int(11),值是时间戳。我需要将此字段更改为日期时间字段或创建一个新的日期时间字段,然后使用旧时间戳值的日期时间值填充该字段。

它可以使用带有循环的 php 代码。如果有任何 mysql 查询,那将会很有趣。

非常感谢您的所有帮助, 快乐编码

【问题讨论】:

  • 用于mysql日期时间插入echo date('Y-m-d H:i:s');

标签: php mysql datetime timestamp


【解决方案1】:

或者,通过添加字段DateTime 的另一列来更改表。将此列命名为 DateTimeField 或任何您想要的名称。更改表后,执行此查询

UPDATE tableName
SET    DateTimeField = FROM_UNIXTIME(yourOldTimstampField)

【讨论】:

  • 感谢您的快速回复,我现在会检查它
  • 另外,您可以将当前的 Unix Timestamp 字段更改为 VARCHAR(50),运行上面的更新代码(但使用相同的字段名称),然后再次将该列更改为 DateTime 字段。无需创建另一列。
【解决方案2】:

第一次添加新列:

ALTER TABLE yourTable 
  ADD COLUMN new_date DATETIME NOT NULL DEFAULT '2013-01-08 00:00:00' AFTER preceding_col

然后更新:

UPDATE youTable SET new_date = FROM_UNIXTIME(old_date)

然后您可以删除旧列(如果需要):

Alter TABLE yourTable drop column old_date;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2013-09-27
    相关资源
    最近更新 更多