两张表怎么连接

通过内连接inner join,外连接outer join, 交叉连接 cross join来合并多个表的查询结果。

什么是内连接

内连接用于返回两个表中有匹配关系的行。

假设有两张表,用户表和订单表,想查询有订单的用户

select users.name, orders.order_id 
from 
users inner join orders
on users.id = orders.user_id;

只有那些在两个表中都存在user_id的记录才会出现在查询结果中

什么是外连接

  1. 和内连接不同,外连接不仅返回两个表中匹配的行,还返回没有匹配的行,用null来填充。
  2. 外连接分左外连接,和右外连接 right join。
  3. left join会保留左表中符合条件的所有记录。
  • 如果右表中有匹配的记录,就返回匹配的记录
  • 否则就用null填充。
  1. 右连接就是左连接的镜像,right join会保留右表中符合条件的所有记录

什么是交叉连接

交叉连接,返回两张表的笛卡尔积。

posted @ 2025-05-19 21:11  kuki'  阅读(20)  评论(0)    收藏  举报