我有一个表格名为pref,其中有一列值为value。这个值的类型是文本。我想将id为7的行的值字段值复制到id为1的行的值字段中。你能帮我如何做吗?我知道MS SQL,但我对mySQL还很陌生。
create table pref
(
id int,
value text
)
我有一个表格名为pref,其中有一列值为value。这个值的类型是文本。我想将id为7的行的值字段值复制到id为1的行的值字段中。你能帮我如何做吗?我知道MS SQL,但我对mySQL还很陌生。
create table pref
(
id int,
value text
)
在MySQL中,您不能在更新的表中使用子查询,但可以使用联接。
UPDATE pref AS target
LEFT JOIN pref AS source ON source.id = 7
SET target.value = source.value
WHERE target.id = 1;
UPDATE
pref
SET
value = (SELECT value WHERE id = 7)
WHERE
id = 1
name pin
john sdhjduwhdowodw7d87e838g83g8g3of...
jane
//copy from field with value into empty field
UPDATE my_table AS target
LEFT JOIN my_table AS source ON source.pin != ""
SET target.pin = source.pin
WHERE target.pin = "";
// Hurray, it works!
name pin
john sdhjduwhdowodw7d87e838g83g8g3of...
jane sdhjduwhdowodw7d87e838g83g8g3of...