我有两张桌子 - table1 和 table2
table1 有14 columns
,table2 有15 columns
. 两个表first 14 columns
中的 相同且顺序相同。我想将 table1 的某些行复制到 table2 中,并将时间戳插入第 15 列。如何为此编写查询?
我有两张桌子 - table1 和 table2
table1 有14 columns
,table2 有15 columns
. 两个表first 14 columns
中的 相同且顺序相同。我想将 table1 的某些行复制到 table2 中,并将时间戳插入第 15 列。如何为此编写查询?
INSERT INTO t2(c1,c2,c3)
SELECT c1,c2, NOW() FROM t1;
您可以使用 *,但这是未来问题的秘诀:当您更改其中一个表中的列定义时,查询将失败。
insert into table2
select *, current_timestamp
from table1
where table1.some_column = 'whatever' -- etc
虽然很方便,但这很脆弱。命名所有列更清晰,更好:
insert into table2 (col1, col2, col3, ..., col15, col16)
select col1, col2, col3, ..., col15, current_timestamp
from table1
where table1.coln = 'whatever' -- etc