mysql中把两列数据对调
方法一:使用临时变量
第一步:创建临时变量
首先我们需要创建2个临时变量来保存2列数据的值。例如:
SET @tmp1 = (SELECT col1 FROM mytable WHERE somecondition); SET @tmp2 = (SELECT col2 FROM mytable WHERE somecondition);
注意,这里 mytable 是你要操作的表名,col1 是你要操作的列名,somecondition 是一个可选的 WHERE 子句,用于限制操作的行。
第二步:更新列的值
接下来,我们可以使用 UPDATE 语句更新列的值为临时变量的值:
UPDATE mytable SET col1 = @tmp2 WHERE somecondition; UPDATE mytable SET col2 = @tmp1 WHERE somecondition;
方法二:推荐
update t_info as a, t_info as b set a.create_date = b.creator, a.creator = b.create_date where a.id = b.id;