我正在尝试将两列DATE
和TIME
连接到一列DATETIME
。
这些列已经存在,但它们位于不同的表中。
结构如下:
表1: column_datetime (YYYY-MM-DD HH:MM:SS)
表2: column_date (YYYY-MM-DD), column_time(HH-MM-SS).
我需要更新表1,我试过这个:
UPDATE table1 SET column_datetime = CONCAT('table2.column_date', ' ', 'table2.column_time');
但它说:
日期时间值不正确:'table2.column_date table2.column_time for 第1行的列'column_datetime'。
答案 0 :(得分:1)
尝试此查询:
UPDATE table1, table2
SET column_datetime = STR_TO_DATE(CONCAT(table2.column_date, ' ', table2.column_time), '%Y-%c-%e %T')
WHERE table1.FK_ID = table2.ID ;