使用现有行中的数据插入行

时间:2014-06-10 02:51:57

标签: mysql sql database insert

所以,我有一个名为product_description的mysql表,其中包含列:primarykey,name,description,language_id(primarykey是一个自动增量字段)

对于语言ID 1和2,它可能有18000条记录。

我想创建从行ID中复制数据的新行。

我可以做点什么吗

INSERT INTO 'product_description' ('name', 'description', 'language_id')
VALUES (SELECT 'name', 'description', 3 FROM 'product_description' WHERE 'language_id' = 1);

2 个答案:

答案 0 :(得分:1)

INSERT INTO product_description (name, description, language_id)
SELECT name, description, 3 
FROM product_description
WHERE language_id = 1;

BTW如果你想要转义列名或表名,那么使用反引号,而不是引号。

答案 1 :(得分:1)

使用反引号而不是像这样的单引号

INSERT INTO `product_description` (`name`, `description`, `language_id`)
SELECT `name`, `description`, 3 
FROM `product_description` 
WHERE `language_id` = 1;