mysql内连接查询
时间: 2023-07-25 12:05:39 浏览: 36
MySQL中的内连接查询(Inner Join)可以用来查询两个或多个表中匹配的数据。
语法如下:
```
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;
```
其中,`table1` 和 `table2` 是要进行连接的表名,`column_name` 是要查询的列名。
`ON` 子句用于指定连接条件,即连接哪些列。只有满足连接条件的行才会被返回。
例如,我们有两个表 `employees` 和 `departments`,它们的结构如下:
```
employees:
+----+--------+---------+
| id | name | dept_id |
+----+--------+---------+
| 1 | Alice | 1 |
| 2 | Bob | 2 |
| 3 | Charlie| 1 |
| 4 | David | 2 |
+----+--------+---------+
departments:
+----+------------+
| id | name |
+----+------------+
| 1 | Sales |
| 2 | Marketing |
+----+------------+
```
我们可以使用内连接查询来查找每个员工所在的部门名称,查询语句如下:
```
SELECT employees.name, departments.name
FROM employees
INNER JOIN departments
ON employees.dept_id = departments.id;
```
执行该语句后,将返回以下结果:
```
+--------+------------+
| name | name |
+--------+------------+
| Alice | Sales |
| Bob | Marketing |
| Charlie| Sales |
| David | Marketing |
+--------+------------+
```
注意,由于 `employees` 表和 `departments` 表都有一个名为 `name` 的列,因此我们需要使用 `table_name.column_name` 的形式来指定要查询的列。