如何在MySQL数据库中使用另一个表中的ID获取用户名?


要使用两个表中的ID获取用户名,你需要使用JOIN连接这两个表。

让我们创建一个表:

示例

mysql> create table demo77
   -> (
   -> userid int not null primary key,
   -> username varchar(20)
   -> );
Query OK, 0 rows affected (2.63

使用insert命令在表中插入一些记录:

示例

mysql> insert into demo77 values(1,'John');
Query OK, 1 row affected (0.19

mysql> insert into demo77 values(2,'Bob');
Query OK, 1 row affected (0.36

使用select语句显示表中的记录:

示例

mysql> select *from demo77;

这将产生以下输出:

输出

+--------+----------+

| userid | username |

+--------+----------+

|      1 | John     |

|      2 | Bob      |

|      3 | Mike     |

+--------+----------+

以下是创建第二个表的查询:

示例

mysql> create table demo78
   -> (
   -> id int not null primary key,
   -> countryname varchar(20),
   -> constraint fk_id foreign key(id) references demo77(userid)
   -> );
Query OK, 0 rows affected (0.75

使用insert命令在第二个表中插入一些记录:

示例

mysql> insert into demo78 values(1,'US');
Query OK, 1 row affected (0.14

mysql> insert into demo78 values(2,'AUS');
Query OK, 1 row affected (0.15

使用select语句显示第二个表中的记录:

示例

mysql> select *from demo78
   -> ;

这将产生以下输出:

输出

+----+-------------+

| id | countryname |

+----+-------------+

|  1 | US          |

|  2 | AUS         |

+----+-------------+

2 rows in set (0.00 sec)

以下是通过连接两个表使用id获取用户名的查询:

示例

mysql> select username from demo77
   -> join demo78
   -> on demo77.userid=demo78.id;

这将产生以下输出:

输出

+----------+

| username |

+----------+

| John     |

| Bob      |

+----------+

2 rows in set (0.05 sec)

更新于:2020年12月11日

3K+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.