返回顶部
首页 > 资讯 > 数据库 >怎么在SQL语句中使用JOIN连接数据库
  • 809
分享到

怎么在SQL语句中使用JOIN连接数据库

2024-04-02 19:04:59 809人浏览 独家记忆
摘要

这篇文章给大家介绍怎么在sql语句中使用JOIN连接数据库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。通常有以下几种连接方式:JOIN  or  INNER JO

这篇文章给大家介绍怎么在sql语句中使用JOIN连接数据库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

通常有以下几种连接方式:

JOIN  or  INNER JOIN(内连接) : 这两个是相同的,要求两边表同时有对应的数据,返回行,任何一边缺失数据就不显示。

LEFT JOIN(左外连接):即使右边的表中没有匹配,也从左表返回所有的行。

RIGHT JOIN(右外连接):即使左边的表中没有匹配,也从右表返回所有的行。

FULL JOIN(全外连接):只要其中一个表中存在匹配就返回行。

如例,有grade表(课程号sn,分数scroe,学号id),student表(学号id,学生姓名name),要查询学生的姓名和成绩

怎么在SQL语句中使用JOIN连接数据库 怎么在SQL语句中使用JOIN连接数据库

当JOIN或是INNER JOIN时,

SELECT s.name,g.sn,g.score from student as s join grade as g on s.id = g.id

或者

SELECT s.name,g.sn,g.score from student as s inner join grade as g on s.id = g.id

结果集如下

怎么在SQL语句中使用JOIN连接数据库

当LEFT JOIN时,

SELECT s.name,g.sn,g.score from student as s left join grade as g on s.id = g.id

结果集如下

怎么在SQL语句中使用JOIN连接数据库

当RIGHT JOIN时,

SELECT s.name,g.sn,g.score from student as s right join grade as g on s.id = g.id

结果集如下

怎么在SQL语句中使用JOIN连接数据库

当FULL JOIN时,

SELECT s.name,g.sn,g.score from student as s full join grade as g on s.id = g.id

结果集如下

怎么在SQL语句中使用JOIN连接数据库

注意,两个表连接时用on,在使用left join(right join或full join)时,on与where的区别是:

on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录

where条件是在临时表生成好后再对临时表进行过滤的条件,这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。如下图,

on条件为黄色部分

SELECT s.name,g.sn,g.score from student as s left join grade as g on s.id = g.id and score =90

怎么在SQL语句中使用JOIN连接数据库

SELECT s.name,g.sn,g.score from student as s left join grade as g on s.id = g.id where score =90

怎么在SQL语句中使用JOIN连接数据库

下面看下SQL中join的各种用法

1.自然连接(natural join)

自然连接将表中具有相同名称的列自动进行匹配,自然连接不必指定任何同等连接条件也不能认为指定哪些列需要被匹配,自然连接得到的结果表中,两表中名称相同的列只出现一次。

select * from employee natural join department;

2.内连接(inner join):产生的结果是A和B的交集(相同列里面的相同值)

内连接查询能将左表和右表中能关联起来的数据连接后返回,返回的结果就是两个表中所有相匹配的数据。

select * from TableA as A inner join TableB B on A.PK = B.PK;
select * from TableA as A inner join TableB B on A.PK > B.PK;


怎么在SQL语句中使用JOIN连接数据库

3.外连接(outer join)

内连接是要显示两张表的内存,而外连接不要求如此,外连接可以依据连接表保留左表,右表或全部表的行为而分为左外连接右外连接和全连接。

select * from TableA as A left(right/full) join TableB as B on A.PA = B.PK;

Full Join:产生的结果是A和B的并集(如果没有相同的值会用null作为值)

怎么在SQL语句中使用JOIN连接数据库

Left Join:产生表A的完全集,而B表中匹配的则有值(没有匹配的则以null值取代)


怎么在SQL语句中使用JOIN连接数据库

Right Join:产生表B的完全集,而A表中匹配的则有值(没有匹配的则以null值取代)

怎么在SQL语句中使用JOIN连接数据库

4.交叉连接(cross join)

又称笛卡尔连接,交叉连接返回两个集合的笛卡尔积。

select * from TableA cross join TableB;

关于怎么在SQL语句中使用JOIN连接数据库就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: 怎么在SQL语句中使用JOIN连接数据库

本文链接: https://lsjlt.com/news/54654.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么在SQL语句中使用JOIN连接数据库
    这篇文章给大家介绍怎么在SQL语句中使用JOIN连接数据库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。通常有以下几种连接方式:JOIN  or  INNER JO...
    99+
    2024-04-02
  • sql语句中join怎么使用
    在SQL语句中,JOIN用于将两个或多个表中的行连接在一起,以便可以通过共享的列值从这些表中检索数据。JOIN的语法如下:```SE...
    99+
    2023-10-07
    sql join
  • sql语句中的join怎么使用
    在SQL中,JOIN用于将两个或多个表中的行连接在一起。JOIN操作的基本语法如下:```sqlSELECT 列名FROM ...
    99+
    2023-10-10
    sql join
  • SQL语句中不同的连接JOIN及join的用法是什么
    本篇文章为大家展示了SQL语句中不同的连接JOIN及join的用法是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。为了从两个表中获取数据,我们有时会用JOIN将...
    99+
    2024-04-02
  • IDEA连接MySQL数据库并执行SQL语句使用数据
    文章目录 一、IDEA连接MySQL数据库(一)首先新建普通Java项目(二)连接数据库1、点击右侧DataBase2、点击加号,找到MySQL,添加数据库3、输入用户名和密码,点击**Tes...
    99+
    2023-08-31
    mysql 数据库 intellij-idea
  • 怎么在数据库中使用JOIN
    怎么在数据库中使用JOIN?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Join相信大家在学习数据库的使用时,都有使用过Joi...
    99+
    2024-04-02
  • 如何使用JDBC连接数据库并执行SQL语句
    目录1. JDBC入门2. 抽取工具类3. Statement CRUD4. 演练CRUD5. Dao模式(声明与实现分开)6. PrepareStatement CRUD1. JD...
    99+
    2023-05-18
    JDBC连接数据库 JDBC连接数据库案例
  • SQL语句之如何用JOIN连接多个表
    目录SQL语句 用JOIN连接多个表SQL语句多表连接查询语法一、外连接二、内连接 三、交叉连接总结SQL语句 用JOIN连接多个表 连接两个数据表的用法 : SELECT * FROM actor I...
    99+
    2022-12-21
    SQL语句 JOIN连接多个表 SQLJOIN连接多个表
  • SQL语句中的right join怎么用
    SQL语句中的right join怎么用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。right join是SQL语言中的查询类型,即连接...
    99+
    2024-04-02
  • R语言中怎么使用SQL语句读取数据库数据
    在R语言中使用SQL语句读取数据库数据,一般可以通过以下步骤实现: 首先,需要安装并加载适当的R包来连接数据库。常用的包包括DB...
    99+
    2024-04-24
    r语言 数据库
  • HTML5数据库的SQL语句怎么使用
    这篇文章主要介绍“HTML5数据库的SQL语句怎么使用”,在日常操作中,相信很多人在HTML5数据库的SQL语句怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML...
    99+
    2024-04-02
  • 数据库sql create table语句怎么使用
    CREATE TABLE是用于在数据库中创建一个新表的SQL语句。 基本语法如下: CREATE TABLE 表名 ( 列名1 数据...
    99+
    2024-04-09
    数据库
  • 数据库SQL语句的使用
    这篇文章主要讲解了“数据库SQL语句的使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“数据库SQL语句的使用”吧!1、创建数据库 create ...
    99+
    2024-04-02
  • IDEA连接MySQL数据库并执行SQL语句使用数据图文详解
    目录一、IDEA连接mysql数据库(一)首先新建普通Java项目(二)连接数据库二、使用数据库的数据(一)新建Java类 Test(二)下载MySQL驱动Jar包(三)返回IDEA,新建文件夹lib(四)非常重要(添加...
    99+
    2023-03-23
    idea 连接mysql idea连接mysql数据库如何使用 用idea连接mysql
  • 怎么在JavaScript中使用join连接多个数组
    怎么在JavaScript中使用join连接多个数组?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。JavaScript可以做什么1.可以使网页具有交互性,例如响应用户点击,...
    99+
    2023-06-14
  • sqlserver数据库的sql语句使用
                 T-SQL查询语句1. tansact-SQL编程语言美国国家标准协会(ANSI)和国际标准组织(I...
    99+
    2024-04-02
  • C++中怎么连接SQL数据库
    今天就跟大家聊聊有关C++中怎么连接SQL数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C++连接SQL数据库***步 系统配置设置SQLSERVER服务器为SQL登录方式,并...
    99+
    2023-06-17
  • 怎么在Oracle中使用sqlplus连接数据库
    怎么在Oracle中使用sqlplus连接数据库?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。方式1(本机): / as sysdba在ora...
    99+
    2024-04-02
  • 怎么在Java中使用JDBC连接数据库
    本篇文章给大家分享的是有关怎么在Java中使用JDBC连接数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、使用JDBC连接数据库1.使用JDBC-ODBC桥驱动程序连接...
    99+
    2023-06-06
  • 如何使用SQL语句在MySQL中进行数据连接和联合查询?
    如何使用SQL语句在MySQL中进行数据连接和联合查询?数据连接和联合查询是 SQL 语言中常用的技巧,能够在多个表中获取和筛选所需的数据。在 MySQL 中,我们可以通过使用 JOIN 子句来实现数据连接,使用 UNION 和 U...
    99+
    2023-12-17
    MySQL 数据连接 SQL语句
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作