在同一个表上使用更新复制行

时间:2012-04-12 18:57:31

标签: mysql sql

我有一张cms用来保存多种语言数据的表​​。 如果我想添加另一种语言,我只能在“lang”列中复制现有页面(所有语言)。

如何复制行并更改将放入同一个表的一列的值?

由于

2 个答案:

答案 0 :(得分:1)

INSERT INTO foobar (lang,text)
    SELECT 'de',text
    FROM foobar
    WHERE lang='en';

答案 1 :(得分:0)

您可以使用以下语句执行此操作:

insert into <table_name> (language, value1, value2)
select 'new_language', value1, value2
from <table_name>
where language = 'old_language' 

根据手册:http://dev.mysql.com/doc/refman/5.5/en/insert-select.html