sql学习 inner join,left join,right join

总结:

JOIN(或 INNER JOIN)只返回两个表中匹配的记录。

LEFT JOIN(或 LEFT OUTER JOIN)从左表返回所有的记录,即使右表中没有匹配。如果右表中没有匹配,则结果中右表的部分将是 NULL。

RIGHT JOIN(或 RIGHT OUTER JOIN)从右表返回所有的记录,即使左表中没有匹配。如果左表中没有匹配,则结果中左表的部分将是 NULL。

$ db2 "select * from liys.test1"

ID NAME


1 test_01

2 test_02

3 test_03

3 record(s) selected.

$ db2 "select * from liys.test2"

ID NAME


3 test_03

4 test_04

5 test_05

3 test_03_03

4 record(s) selected.

$ db2 "select t1.id ,t1.name ,t2.id, t2.name from liys.test1 t1 inner join liys.test2 t2 on t1.id=t2.id "

ID NAME ID NAME


3 test_03 3 test_03

3 test_03 3 test_03_03

2 record(s) selected.

$ db2 "select t1.id ,t1.name ,t2.id, t2.name from liys.test1 t1 left join liys.test2 t2 on t1.id=t2.id "

ID NAME ID NAME


3 test_03 3 test_03

3 test_03 3 test_03_03

2 test_02 - -

1 test_01 - -

4 record(s) selected.

$ db2 "select t1.id ,t1.name ,t2.id, t2.name from liys.test1 t1 right join liys.test2 t2 on t1.id=t2.id "

ID NAME ID NAME


3 test_03 3 test_03

3 test_03 3 test_03_03

    • 5 test_05
    • 4 test_04

4 record(s) selected.

相关推荐
此生只爱蛋5 分钟前
【Redis】事务
数据库·redis·缓存
凯子坚持 c6 分钟前
基于Docker的SD-WAN组网方案:利用节点小宝实现服务器远程开发
服务器·docker·容器
野犬寒鸦9 分钟前
从零起步学习MySQL || 第十六章:MySQL 分库分表的考量策略
java·服务器·数据库·后端·mysql
cyhysr12 分钟前
2025sql大赛题:仅用sql处理数独
数据库·sql·oracle
知识分享小能手13 分钟前
Oracle 19c入门学习教程,从入门到精通, —— 知识点详解(1)
数据库·学习·oracle
木风小助理20 分钟前
JavaAtomicInteger底层实现深度解析
java
BD_Marathon26 分钟前
搭建MyBatis框架之创建MyBatis的映射文件(五)
java·数据库·mybatis
一只叫煤球的猫27 分钟前
为什么Java里面,Service 层不直接返回 Result 对象?
java·spring boot·面试
洛阳泰山27 分钟前
智能体项目MaxKB4J - 本地部署与开发完整指南
java·agent·工作流·rag·智能体·maxkb
Solar202533 分钟前
机械制造业TOB企业获客软件选型指南:从挑战到解决方案的深度解析
java·大数据·服务器·架构·云计算