复制一行并在同一个表中插入 MySQL 中字段的一个不同值

Posted

技术标签:

【中文标题】复制一行并在同一个表中插入 MySQL 中字段的一个不同值【英文标题】:To copy a row and insert in same table with a one different value for a field in MySQL 【发布时间】:2014-10-21 06:10:43 【问题描述】:

我正在尝试选择已插入的数据并希望将相同的数据插入到同一个表中。只有一个领域是变化的。所以我尝试过这样的事情,但它是 不工作。

INSERT INTO TABLENAME (field2, field3,2) 
SELECT field2,field3 FROM TABLENAME

请帮忙。

【问题讨论】:

mysql -> insert into tbl (select from another table) and some default values的可能重复 【参考方案1】:

您将列名与其值混淆了。 insert into 子句使用列 names 确定数据应插入到的位置。在select 列表中,您可以拥有列名、常量或计算:

INSERT INTO tablename (field2, field3, field_with_constant_value) 
SELECT      field2, field3, 2 
FROM        tablename

【讨论】:

感谢您的帮助。你能帮忙下一个问题吗? 下一期是什么?如果您还有其他问题(与对此解决方案的评论相反),请将其发布在单独的帖子中。【参考方案2】:

首先您必须在 Insert Query 中指定 fieldName 并且在选择查询中您必须指定要插入的新值,例如:

INSERT INTO TABLENAME (field2, field3, field4) 
SELECT field2,field3,2 FROM TABLENAME

【讨论】:

感谢您的帮助。它有效,接下来我想做的是“我有两个表 TABLE1 和 TABLE2。现在我想更新关系表(TABLE2)中的值,并将主表(TABLE1)的 ID 与另一个表 ID 匹配。” .我该怎么做? 根据***,我可以在5分钟后接受答案

以上是关于复制一行并在同一个表中插入 MySQL 中字段的一个不同值的主要内容,如果未能解决你的问题,请参考以下文章

MySQL表的操作

MySQL如何复制表中的一条记录并插入

Mysql

mysql表操作

mysql-数据库表操作

是否可以从我的 MySQL 数据库中的一个表中的一行中获取一个值并插入到同一数据库中的另一个表中?