11

我正在尝试从 DATE 和 TIME 字段中获取 DATETIME 字段。MYSQL 中的任何函数似乎都没有用。

有人知道如何做到这一点,或者如果这甚至可以做到吗?:)

4

4 回答 4

14

它应该像

UPDATE table SET datetime_field = CONCAT(date_field, " ", time_field);
于 2010-07-22T09:45:12.550 回答
8

如果使用TIME“838:00:00”中的“838:00:00”,则其他两个答案都不能正确转换日期,这是根据mysql手册的有效时间

因此,您可以尝试将时间字段转换为秒,然后添加它们
,例如:

date_field + INTERVAL TIME_TO_SEC(time_field) SECOND

这将相应地转换日期

于 2014-06-15T10:11:59.970 回答
4
addtime(date_field, time_field)
于 2017-04-27T08:09:54.930 回答
1

@Pekka 是对的。

您也可以使用 CONCAT_WS(seperator, val1, val2,....)

CONCAT_WS(' ', date_field,time_field)
于 2010-07-22T09:49:20.357 回答