sql多表联查图文

  1. 内连接(INNER JOIN)
    语法:

    SELECT 列名
    FROM 表1
    INNER JOIN 表2 ON 表1.列名 = 表2.列名;

示例:

复制代码
SELECT 列名
FROM 表1
LEFT JOIN 表2 ON 表1.列名 = 表2.列名;
  1. 左外连接(LEFT JOIN)
    语法

    SELECT 列名
    FROM 表1
    LEFT JOIN 表2 ON 表1.列名 = 表2.列名;

示例:

复制代码
SELECT employees.name, departments.department_name
FROM employees
LEFT JOIN departments ON employees.department_id = departments.id;
  1. 右外连接(RIGHT JOIN)
    语法:

    SELECT 列名
    FROM 表1
    RIGHT JOIN 表2 ON 表1.列名 = 表2.列名;**

示例:

复制代码
SELECT employees.name, departments.department_name
FROM employees
RIGHT JOIN departments ON employees.department_id = departments.id;
  1. 全外连接(FULL JOIN)
    语法:

    SELECT 列名
    FROM 表1
    LEFT JOIN 表2 ON 表1.列名 = 表2.列名
    UNION
    SELECT 列名
    FROM 表1
    RIGHT JOIN 表2 ON 表1.列名 = 表2.列名;

示例:

复制代码
SELECT employees.name, departments.department_name
FROM employees
LEFT JOIN departments ON employees.department_id = departments.id
UNION
SELECT employees.name, departments.department_name
FROM employees
RIGHT JOIN departments ON employees.department_id = departments.id;
  1. 交叉连接(CROSS JOIN)
    语法:

    SELECT 列名
    FROM 表1
    CROSS JOIN 表2;

示例:

复制代码
SELECT employees.name, departments.department_name
FROM employees
CROSS JOIN departments;
相关推荐
Brookty1 小时前
【MySQL】JDBC编程
java·数据库·后端·学习·mysql·jdbc
先做个垃圾出来………1 小时前
SQL的底层逻辑解析
数据库·sql
码不停蹄的玄黓2 小时前
深入拆解MySQL InnoDB可重复读(RR)隔离级别:MVCC+临键锁如何「锁」住一致性?
数据库·mysql·可重复读
paopaokaka_luck2 小时前
基于SpringBoot+Vue的酒类仓储管理系统
数据库·vue.js·spring boot·后端·小程序
Lx3522 小时前
MySQL物化视图:预计算查询结果的定期刷新
sql·mysql·性能优化
Lx3522 小时前
Mysql死锁日志分析:事务逻辑冲突的排查技巧
sql·mysql·性能优化
薛晓刚3 小时前
哪个领域数据库最难替换?
数据库
RainbowSea3 小时前
14. MySQL 锁的详细说明
java·sql·mysql
芷栀夏3 小时前
基于Anything LLM的本地知识库系统远程访问实现路径
数据库·人工智能
RainbowSea3 小时前
12 MySQL 数据库其它调优策略
java·sql·mysql