Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách lấy username dùng ID từ bảng khác trong MySQL

Sử dụng JOIN để kết nối hai bảng.

Tạo bảng demo77 (bảng user):

mysql> CREATE TABLE demo77 (
    -> userid INT NOT NULL PRIMARY KEY,
    -> username VARCHAR(20)
    -> );

Chèn dữ liệu:

mysql> INSERT INTO demo77 VALUES(1,'John');
mysql> INSERT INTO demo77 VALUES(2,'Bob');
mysql> INSERT INTO demo77 VALUES(3,'Mike');

Hiển thị:

mysql> SELECT * FROM demo77;
+--------+----------+
| userid | username |
+--------+----------+
| 1      | John     |
| 2      | Bob      |
| 3      | Mike     |
+--------+----------+

Tạo bảng demo78 (bảng country) với khóa ngoại:

mysql> CREATE TABLE demo78 (
    -> id INT NOT NULL PRIMARY KEY,
    -> countryname VARCHAR(20),
    -> CONSTRAINT fk_id FOREIGN KEY(id) REFERENCES demo77(userid)
    -> );

Chèn dữ liệu:

mysql> INSERT INTO demo78 VALUES(1,'US');
mysql> INSERT INTO demo78 VALUES(2,'AUS');

Hiển thị:

mysql> SELECT * FROM demo78;
+----+-------------+
| id | countryname |
+----+-------------+
| 1  | US          |
| 2  | AUS         |
+----+-------------+

Truy vấn JOIN để lấy username:

mysql> SELECT username FROM demo77
    -> JOIN demo78 ON demo77.userid = demo78.id;

Kết quả:

+----------+
| username |
+----------+
| John     |
| Bob      |
+----------+