【问题标题】:How to copy a row and insert in same table and also update specific column with user values in mysql?如何复制一行并在同一个表中插入,并使用mysql中的用户值更新特定列?
【发布时间】:2021-07-02 21:08:44
【问题描述】:

在 MySQL 中,我试图在同一个表中复制一行,同时增加主键并进一步更新列。

例如:

 1   |   Test1    |  VALUE1 |
 2   |   Test1    |  VALUE2 |

注意:我能够想办法复制一条记录并将其作为新记录插入,但我不知道如何同时更新数据。

更新:我正在使用这样的东西:

Insert into table(col1, col2)
select c1, c2
from table
where id = 1

【问题讨论】:

  • 你目前使用的是什么SQL语句?
  • 我已将我当前使用的代码放在更新部分。
  • 我尝试在选择字段中显式放置一个值,我想在更新的行中插入该值。它工作正常,但只是想确定这是否是正确的方法,还是有其他方法可以实现?

标签: mysql sql-insert


【解决方案1】:

无需单独更新。
select 语句中为col2 使用值'VALUE2'

INSERT INTO tablename(col1, col2) 
SELECT col1, 'VALUE2' 
FROM tablename 
WHERE id = 1

请参阅demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2014-07-21
    • 2019-05-02
    • 2020-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多