我正在尝试交换一些列值,并且无法弄清楚它是如何完成的。假设我有2行,一个ID为2,另一行ID为5.这两行都有一个名为" position"的列。
我想换掉#34;位置"从ID为2的行到"位置" ID为5的行。
因此,如果ID-2行的位置为34且ID-5行的位置为12
ID position
2 34
5 12
新值将是:
ID position
2 12
5 34
如何做到这一点?
答案 0 :(得分:0)
如果您想一次性完成此操作,可以使用简单的UPDATE
语句。
注意:如果您打算在此处复制代码,请将其完整复制,并且不要使用单引号字符引用您的表名或列名(这一个:'
)。
UPDATE `your_table` a
INNER JOIN `your_table` b
ON a.id = 2 AND b.id = 5
SET a.`position` = b.`position`, b.`position` = a.`position`