内连接通过匹配两表关联字段返回数据,仅满足条件的记录被保留。1. 使用INNER JOIN关键字,语法清晰,推荐用于复杂查询;2. 使用逗号分隔表并配合WHERE条件,属早期写法,可读性较差。建议优先采用第一种方式以提升代码可维护性。

mysql内连接查询主要通过匹配两个表中的关联字段来返回数据,只有满足连接条件的记录才会出现在结果中。内连接最常见的写法虽然形式不同,但逻辑一致。以下是两种常见的内连接写法类型:
1. 使用 INNER JOIN 关键字
这是标准的SQL语法,使用 INNER JOIN 明确指定连接类型,并通过 ON 子句定义连接条件。
- 语法清晰,推荐在复杂查询中使用
- 便于阅读和维护
- 支持多表连接扩展
示例:
select * FROM users INNER JOIN orders ON users.id = orders.user_id;
2. 使用隐式内连接(逗号分隔表)
将多个表放在 FROM 子句中用逗号分隔,连接条件写在 WHERE 子句中。这种写法本质上也是内连接,但属于较早的语法风格。
- 语法简洁,适合简单查询
- 容易与过滤条件混淆
- 在表较多时可读性较差
示例:
SELECT * FROM users, orders WHERE users.id = orders.user_id;
基本上就这些。两种方式都能实现相同的结果,但使用 INNER JOIN 更符合现代SQL规范,也更容易区分连接条件和过滤条件。实际开发中建议优先采用第一种写法。