join连接的五种方式的简单使用案例(Inner join,Left join,Right join,Full join,Cross join)

2024-09-01 08:58

本文主要是介绍join连接的五种方式的简单使用案例(Inner join,Left join,Right join,Full join,Cross join),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.内连接Inner join

内连接是基于连接谓词将俩张表(如A和B)的列组合到一起产生新的结果表 
,在表中存在至少一个匹配时,INNER JOIN 关键字返回行。 
这里写图片描述 
下面是一个简单的使用案例 
这里写图片描述

以下是运行代码及结果 
这里写图片描述

2.左外连接Left join

左外连接Left join关键字会从左表那里返回所有的行,即使是在右表中没有匹配到的行 
这里写图片描述 
下面是一个简单的案例 
这里写图片描述

下面是测试用例 
这里写图片描述

3.右外连接Right join

右外连接关键字Right join会从右表那里返回所有的行,即使是在左表中没有匹配到的行 
这里写图片描述 
下面是一个简单的案例 
这里写图片描述

下面是运行及其结果 
这里写图片描述

4.全连接Full join

全连接的关键字Full join,只要其中某个表中存在匹配,Full join 就会返回行 
这里写图片描述

下面是一个简单的案例 
这里写图片描述 
以下是运行及结果 
这里写图片描述

注意一点 MySQL中是不支持Full join 的但是orcal等数据库是支持的。 
如果在mysql要使用Full join就会报以下错误 
这里写图片描述 
解决办法:同时使用左连接和右连接 
以下是一个简单的例子这里写图片描述

5.交叉连接

交叉连接一般使用的比较少,交叉连接又称笛卡尔连接或者叉乘连接,如果,A和B是俩个集合,他们的交叉连接就是A*B 
以下是一个简单的案例 
这里写图片描述

刚刚学习,请多多指教

这篇关于join连接的五种方式的简单使用案例(Inner join,Left join,Right join,Full join,Cross join)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1126495

相关文章

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java