sql中INNER JOIN、LEFT JOIN、RIGHT JOIN

INNER JOIN 的作用

  • INNER JOIN 只会将相关联表匹配到的数据进行展示 假设我们有两个表:sys_user和 sys_user_role

    SELECT s1.* from sys_user s1 INNER JOIN sys_user_role s2 on s1.id =

    s2.user_id

    这样只会展示s1.id = s2.user_id相匹配到的数据,其他数据不会展示。

LEFT JOIN作用

  • 返回左表中的所有记录,如果右表中没有匹配,则结果中右表的列会显示为 NULL。

    SELECT * from sys_user s1 LEFT JOIN sys_user_role s2 on s1.id =

    s2.user_id

    以左表sys_user 为主,匹配之后左表数据全部展示,右表sys_user_role

    只展示与左表匹配到的数据,没有匹配到的展示为null

RIGHT JOIN作用

  • 返回右表中的所有记录,如果左表中没有匹配,则结果中左表的列会显示为 NULL。

    SELECT * from sys_user s1 RIGHT JOIN sys_user_role s2 on s1.id =

    s2.user_id

    以右表sys_user_role 为主,匹配之后右表数据全部展示,左表sys_user

    只展示与右表匹配到的数据,没有匹配到的展示为null

FULL JOIN作用

  • 返回两个表中所有的记录,当某一表中没有匹配时,结果中另一表的列会显示为 NULL。
相关推荐
盒马coding1 天前
第19节-非规范化数据类型-Composite-types
数据库·postgresql
-雷阵雨-1 天前
MySQL——桥梁JDBC
数据库·mysql·oracle
亿坊电商1 天前
在PHP框架里如何进行数据库连接?
数据库·oracle·php
满昕欢喜1 天前
SQL Server从入门到项目实践(超值版)读书笔记 28
数据库·sql·sqlserver
楚韵天工1 天前
宠物服务平台(程序+文档)
java·网络·数据库·spring cloud·编辑器·intellij-idea·宠物
李白你好1 天前
一款专业的多数据库安全评估工具,支持 **PostgreSQL、MySQL、Redis、MSSQL** 等多种数据库的后渗透操作
数据库·mysql·postgresql
恋红尘1 天前
Mysql
数据库·mysql
paishishaba1 天前
数据库设计原则
数据库
曹牧1 天前
oracle:NOT IN
数据库·oracle
爬山算法1 天前
Redis(66)Redis如何实现分布式锁?
数据库·redis·分布式