如何在 sql 中的一个 table 中插入与另一个 table 完全相同但只有一列不同的行?

How to insert a row into one table in sql that is exact same as another table but only one column different?

我有一个 table,我想插入一个与一行完全相同的新行,除了一列值不同。

col1 col2 col3
joe  ben  sam

我希望添加的新行的输出是

col1 col2 col3
bob  ben  sam
joe  ben  sam

如您所见,原始列仍然存在,但我们添加了一个新行,第一个值从 joe 更改为 bob。

关于无需硬编码的最优雅方法的任何想法?我在想也许是基于 select * where 条件但不确定的插入。任何提示将非常感谢。谢谢!

你可以这样做:

insert into t (col1, col2, col3) select 'joe', col2, col3 from t