在MySQL中的两列之间交换数据?
要在MySQL中的两列之间交换数据,请使用变量的概念。让我们首先创建一个表。在这里,我们将Name1与Name2交换-
create table DemoTable -> ( -> Name1 varchar(100), -> Name2 varchar(100) -> );
使用插入命令在表中插入一些记录-
insert into DemoTable values('John Smith','Chris Brown'); insert into DemoTable values('David Miller','Jone Doe');
使用select语句显示表中的所有记录-
select *from DemoTable;
输出结果
这将产生以下输出-
+--------------+-------------+ | Name1 | Name2 | +--------------+-------------+ | John Smith | Chris Brown | | David Miller | Jone Doe | +--------------+-------------+ 2 rows in set (0.00 sec)
以下是在MySQL中的两列之间交换数据的查询-
update DemoTable -> SET Name1=(@tmpName:=Name1), Name1 = Name2, Name2 = @tmpName; Rows matched: 2 Changed: 2 Warnings: 0
让我们再次检查表记录-
select *from DemoTable;
输出结果
这将产生以下输出-
+-------------+--------------+ | Name1 | Name2 | +-------------+--------------+ | Chris Brown | John Smith | | Jone Doe | David Miller | +-------------+--------------+ 2 rows in set (0.00 sec)