Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để nối các bảng và tìm nạp các giá trị từ cơ sở dữ liệu MySQL?


Để nối các bảng, hãy sử dụng khái niệm JOIN trong MySQL. Đầu tiên, chúng ta hãy tạo hai bảng.

Hãy để chúng tôi tạo bảng đầu tiên -

mysql> CREATE TABLE `demo52` (
−> `id` INT NOT NULL,
−> `name` VARCHAR(20) NOT NULL,
−> PRIMARY KEY (`id`)
−> );
Query OK, 0 rows affected (1.19 sec)

Chèn một số bản ghi vào bảng với sự trợ giúp của lệnh insert -

mysql> insert into demo52 values(1,'John');
Query OK, 1 row affected (0.17 sec)

mysql> insert into demo52 values(2,'David');
Query OK, 1 row affected (0.10 sec)

mysql> insert into demo52 values(3,'Mike');
Query OK, 1 row affected (0.13 sec)

Hiển thị các bản ghi từ bảng bằng cách sử dụng câu lệnh select -

mysql> select *from demo52;

Điều này sẽ tạo ra kết quả sau -

+----+-------+
| id | name  |
+----+-------+
|  1 | John  |
|  2 | David |
|  3 | Mike  |
+----+-------+
3 rows in set (0.00 sec)

Sau đây là truy vấn để tạo bảng thứ hai.

mysql> CREATE TABLE `demo53` (
−> `id` INT NOT NULL,
−> `age` INT NOT NULL,
−> PRIMARY KEY (`id`),
−> CONSTRAINT `id_demo` FOREIGN KEY (`id`) REFERENCES `demo52` (`id`)
−> );
Query OK, 0 rows affected (0.57 sec)

Chèn một số bản ghi vào bảng với sự trợ giúp của lệnh insert -

mysql> insert into demo53 values(1,23);
Query OK, 1 row affected (0.08 sec)

mysql> insert into demo53 values(2,22);
Query OK, 1 row affected (0.15 sec)

mysql> insert into demo53 values(3,26);
Query OK, 1 row affected (0.13 sec)

Hiển thị các bản ghi từ bảng bằng cách sử dụng câu lệnh select -

mysql> select *from demo53;

Điều này sẽ tạo ra kết quả sau -

+----+-----+
| id | age |
+----+-----+
|  1 | 23  |
|  2 | 22  |
|  3 | 26  |
+----+-----+
3 rows in set (0.00 sec)

Sau đây là truy vấn để lấy tên người dùng bằng cách sử dụng id -

mysql> SELECT name FROM demo52 t1
−> JOIN demo53 t2
−> ON t1.id=t2.id WHERE t1.id=1;

Điều này sẽ tạo ra kết quả sau -

+------+
| name |
+------+
| John |
+------+
1 row in set (0.00 sec)