我们假设我有这4列:
pid, id, name, placeholder
示例表myTable
中的一些示例记录:
pid, id, name, placeholder
1, 1 , hans, -
1, 2 , joe, -
1, 3 , peter,-
是否可以使用SQL将所有数据从一列复制到另一列?例如。将name
的内容复制到列placeholder
?
预期结果:
pid, id, name, placeholder
1, 1 , hans, hans
1, 2 , joe, joe
1, 3 , peter,peter
我试过了:
UPDATE myTable
SET placeholder = (SELECT name
FROM myTable)
WHERE pid=1;
但我得到Error in query (1093): You can't specify target table 'MyTable' for update in FROM clause
答案 0 :(得分:3)
只需使用以下查询
UPDATE `table` SET placeholder = name
你也可以在这里使用where条件。
答案 1 :(得分:1)
UPDATE myTable
SET placeholder = name;
修改的 什么&原因:在给定的表中将一个完整列复制到另一个列是一个非常简单的过程。 是的,您可以通过在末尾添加WHERE子句来扩展它,以仅为特定行执行复制。