首页 > 数据库 >SQL: Join的用法

SQL: Join的用法

时间:2023-04-03 16:48:07浏览次数:38  
标签:table2 table1 JOIN 匹配 column 用法 SQL Join LEFT

在 SQL 中,JOIN 是将两个或多个表中的行连接起来的方法。JOIN 的基本思想是将两个表中的数据按照某些条件进行匹配,然后将匹配的结果合并成一个新的表。

常见的 JOIN 类型有 INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL OUTER JOIN。

INNER JOIN

INNER JOIN 是最常用的 JOIN 类型,它只返回两个表中匹配的行。INNER JOIN 的语法如下:

SELECT *
FROM table1
INNER JOIN table2
ON table1.column = table2.column; 

其中,table1 和 table2 是要连接的两个表,column 是连接两个表的列。 

LEFT JOIN

LEFT JOIN 返回左表中的所有行以及右表中匹配的行。如果右表中没有匹配的行,则返回 NULL 值。LEFT JOIN 的语法如下:

SELECT *
FROM table1
LEFT JOIN table2
ON table1.column = table2.column;

RIGHT JOIN

RIGHT JOIN 与 LEFT JOIN 相反,它返回右表中的所有行以及左表中匹配的行。如果左表中没有匹配的行,则返回 NULL 值。RIGHT JOIN 的语法如下:

SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column = table2.column;

FULL OUTER JOIN

FULL OUTER JOIN 返回左表和右表中的所有行,如果某个表中没有匹配的行,则返回 NULL 值。FULL OUTER JOIN 的语法如下:

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;

总结

JOIN 是 SQL 中非常重要的一个概念,它可以将多个表中的数据连接起来,方便我们进行数据分析和处理。在实际应用中,我们需要根据具体的需求选择不同的 JOIN 类型,以达到最好的效果。

标签:table2,table1,JOIN,匹配,column,用法,SQL,Join,LEFT
From: https://www.cnblogs.com/yellow3gold/p/17283479.html

相关文章

  • DBCA库安装后sql语句优化
    SQLplus下运行:altersystemsetdeferred_segment_creation=falsescope=spfile;altersystemsetevent='10949tracenamecontextforever,level1'scope=spfile;altersystemsetremote_dependencies_mode='SIGNATURE';altersystemset"......
  • MYSQL中CAST函数
    MYSQL中CAST函数CAST函数用于将值从一种转换数据类型的方法语法:SELECTCAST(xAStype);x:要处理的数据type:要转换的数据类型,取值下方表格type取值值描述DATE将value转换成'YYYY-MM-DD'格式TIME将value转换成'HH:MM:SS'格式DATETIME将value转换......
  • SQL server增删改查
    1、添加字段altertable表名add字段名typenotnulldefault02、修改字段名altertable表名renamecolumnAtoB3、修改字段类型altertable表名altercolumnUnitPricedecimal(18,4)notnull4、修改字段默认值altertable表名dropconstraint约束名字  -----......
  • SQLSERVER查看加密存储过程
    --解密存储过程CREATE  PROCEDUREsp_decrypt(@objectNamevarchar(50))ASbeginsetnocounton--CSDN:j9988copyright:2004.04.15--V3.1--破解字节不受限制,适用于SQLSERVER2000存储过程,函数,视图,触发器--修正上一版视图触发器不能正确解密错误--发现有错,请E_MAIL:CSDNj9......
  • ForkJoin
    ForkJoinPool是JDK7中,@authorDougLea加入的一个线程池类。Fork/Join框架的核心原理就是分治算法(Divide-and-Conquer)和工作窃取算法(work-stealingalgorithm)。Fork分解任务成独立的子任务,用多线程去执行这些子任务,Join合并子任务的结果。这样就能使用多线程的方式来执行一......
  • SQLSERVER stuff函数截取
    一个列的格式是单引号后面跟着4位的数字,比如’0003,’0120,’4333,我要转换成3,120,4333这样的格式,就是去掉单引号和前导的0,用以下语句就可以。SELECTstuff(substring([当前组织],2,4),1,patindex('%[^0]%',substring([当前组织],2,4))-1,''),人员编码 例如:SELECTdistinctst......
  • 七、sql索引
    索引的作用拿汉语字典的目录页(索引)打比方,我们可以按拼音、笔画、偏旁部首等排序的目录(索引)快速查找到需要的字。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索......
  • SQL SERVER 截取字符
    1、LOCATE(substr,str):返回子串substr在字符串str中第一次出现的位置,如果字符substr在字符串str中不存在,则返回0;2、POSITION(substrINstr):返回子串substr在字符串str中第一次出现的位置,如果字符substr在字符串str中不存在,与LOCATE函数作用相同;3、LEFT(str,length):从左边开始截取......
  • C# 后台服务监控SQL Server数据库表改动并同步到MySQL数据库表
    需求将A服务器的sqlserver数据库item_mst表的数据同步到MySQL数据库Part表监控Item_mst表中item,description,overview的更改并同步到MySQL数据库 针对需求一,基本就是执行一次,单独写了个winform用来做这事针对需求二,写了个Windowsserviceapp Nuget安装 Dapper就是个ormSeril......
  • 零基础Go语言从入门到精通(数据库编程:02-Gorm 操作 MySQL 数据库)
    gin-gorm-api-example/main.goatmaster·cgrant/gin-gorm-api-example·GitHubhttps://github.com/cgrant/gin-gorm-api-example/blob/master/main.goGorm介绍ThefantasticORMlibraryforGolangGo语言的超棒的ORM类库功能强大:全功能ORM(几乎)关联(包含一个,包含多个,属......