如何连接表并从 MySQL 数据库中获取值?

mysqlmysqli database

要连接表,请使用 MySQL 中的 JOIN 概念。首先,让我们创建两个表。

让我们创建第一个表 −

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

使用 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)

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

mysql> select *from demo52;

这将产生以下输出 −

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

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

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)

使用 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)

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

mysql> select *from demo53;

这将产生以下输出 −

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

以下是使用 id 获取用户名的查询 −

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

这将产生以下输出 −

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

相关文章