可以对两个表执行单个 MySQL 选择查询吗?

mysqlmysqli database

是的,可以。以下是语法 −

select * from yourTableName1,yourTableName2;

首先我们创建一个表 −

mysql> create table DemoTable1
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY
   -> );
Query OK, 0 rows affected (0.54 sec)

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

mysql> insert into DemoTable1 values(),(),();
Query OK, 3 rows affected (0.14 sec)
Records: 3  Duplicates: 0  Warnings: 0

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

mysql> select * from DemoTable1;

这将产生以下输出 −

+----+
| Id |
+----+
|  1 |
|  2 |
|  3 |
+----+
3 rows in set (0.00 sec)

这是创建第二个表的查询 −

mysql> create table DemoTable2
   -> (
   -> FirstName varchar(10)
   -> );
Query OK, 0 rows affected (0.58 sec)

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

mysql> insert into DemoTable2 values('Chris'),('David'),('Sam');
Query OK, 3 rows affected (0.10 sec)
Records: 3  Duplicates: 0  Warnings: 0

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

mysql> select * from DemoTable2;

这将产生以下输出 −

+-----------+
| FirstName |
+-----------+
| Chris     |
| David     |
| Sam       |
+-----------+
3 rows in set (0.00 sec)

以下是对两个表执行选择查询的查询 −

mysql> select Id,FirstName from DemoTable1,DemoTable2;

这将产生以下输出 −

+----+-----------+
| Id | FirstName |
+----+-----------+
|  1 | Chris     |
|  2 | Chris     |
|  3 | Chris     |
|  1 | David     |
|  2 | David     |
|  3 | David     |
|  1 | Sam       |
|  2 | Sam       |
|  3 | Sam       |
+----+-----------+
9 rows in set (0.00 sec)


相关文章