如何将同一行中的一列的值复制到另一列?

时间:2012-04-29 19:32:32

标签: mysql sql

这是我的示例表:

+-----+----------+------+
| id  | current  | max  |
+-----+----------+------+
| 1   | 20       | 100  |
| 2   | 50       | 50   |
+-----+----------+------+

我需要一个查询,它会将行current列的值设置为max列,但我无法找到复制它的方法过度。这是我目前的查询:

UPDATE `table` SET `current` = ??? WHERE `id` = 1

我将???替换为使用该列的值为100?

2 个答案:

答案 0 :(得分:3)

使用列名称将其设置为该列值:

UPDATE `table` SET `current` = `max` WHERE `id` = 1

答案 1 :(得分:2)

要使用current列中的值更新列max,仅显示行ID 1 ,请使用此脚本。

UPDATE table 
SET    current = max
WHERE  id = 1;

要为表格中所有行的current列中的值更新列max,请移除WHERE条件。

UPDATE table 
SET    current = max;