为此,您可以使用联接概念。让我们首先创建一个表-
mysql> create table DemoTable1 -> ( -> Id int, -> Name varchar(10) -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1 values(100,'Bob');
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1;
这将产生以下输出-
+------+------+ | Id | Name | +------+------+ | 100 | Bob | +------+------+ 1 row in set (0.00 sec)
这是创建第二个表的查询-
mysql> create table DemoTable2 -> ( -> Id int, -> FirstName varchar(10) -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable2 values(100,'Adam');
使用select语句显示表中的所有记录-
mysql> select * from DemoTable2;
这将产生以下输出-
+------+-----------+ | Id | FirstName | +------+-----------+ | 100 | Adam | +------+-----------+ 1 row in set (0.00 sec)
这是基于另一个MySQL表的列更新列的查询-
mysql> update DemoTable1 -> join DemoTable2 on DemoTable1.Id=DemoTable2.Id -> set DemoTable1.Name=DemoTable2.FirstName; Rows matched: 1 Changed: 1 Warnings: 0
让我们检查具有更新值的第一个表的记录-
mysql> select * from DemoTable1;
这将产生以下输出-
+------+------+ | Id | Name | +------+------+ | 100 | Adam | +------+------+ 1 row in set (0.00 sec)