SQL有关表的左连接,右连接,以及内连接

这篇具有很好参考价值的文章主要介绍了SQL有关表的左连接,右连接,以及内连接。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        首先我们需要想一下,我们为什么需要将表连接在一起呢?换种说法,即我们需要查询的数据不在同一张表里面,而是在A表中查出一部分,然后再去B表中查出一部分,然后两者结合在一起,才是我们需要的部分。那么我们为什么不是把我们需要的数据从A表中查出,再去B表中查出,然后做一个简单的拼接呢?显然这两者契合的数据必然是冗杂de,我们还需要进行进一步的筛选,才能选出我们所需的数据。

我们先来创建两张表:

STUDENT表:

CREATE TABLE STUDENT(
ID VARCHAR(20),
NAME VARCHAR(20),
SCORE NUMBER(5,2),
BANJIID NUMBER(1),
GENDER VARCHAR2(30)
);

TEACHER表:

CREACREATE TABLE TEACHER(
ID VARCHAR(20),
NAME VARCHAR(20),
ADDRESS VARCHAR2(30),
SEX VARCHAR2(20)
);

创建完之后我们往里面输入数据

SQL有关表的左连接,右连接,以及内连接,sql,数据库

SQL有关表的左连接,右连接,以及内连接,sql,数据库

左连接: 是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。话说这里的判断条件为什么不同where呢?因为我们连接出来的表是一张临时表,需用on,我们一般的单表查询都是真实存在的表,用where。

图形展示:

SQL有关表的左连接,右连接,以及内连接,sql,数据库

 

左连接题目:查询出所有老师的NAME以及和老师的ID相同的学生的NAME?

我们从这句话里面能够看出主表是老师TEACHER,因为是所有老师的ID嘛。条件是老师和学生的ID相同。

SQL语句:

SELECT A.NAME, B.NAME FROM TEACHER A LEFT JOIN STUDENT B ON A.ID = B.ID;

查询结果显示:

SQL有关表的左连接,右连接,以及内连接,sql,数据库

内连接:就是两者相同的部分,两者的相同信息混合在一起,然后进行条件筛选。

图形展示:

                                     SQL有关表的左连接,右连接,以及内连接,sql,数据库

内连接 题目:根据两张表的共同ID,查出老师TEACHER表里面的地址ADDRESS和学生STUDENT表里面的成绩SCORE。

SQL语句:

SELECT A.ADDRESS,B.SCORE
FROM TEACHER A 
INNER JOIN STUDENT B
ON A.ID=B.ID;

查询结果显示:

SQL有关表的左连接,右连接,以及内连接,sql,数据库文章来源地址https://www.toymoban.com/news/detail-665118.html

到了这里,关于SQL有关表的左连接,右连接,以及内连接的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SQL Server数据库 -- 表的高级查询

      一、子查询 嵌套子查询 相关子查询 二、查询运算 并运算union 交运算intersect 差运算except 三、函数的使用 if语句 while语句 case语句 四、总结 高级子查询是对查询更灵活的运用,学会了高级查询将对数据库使用有很大的帮助。       在SQL语言中,一个select-from-where语句称为一

    2024年02月13日
    浏览(58)
  • SQL server附加数据库时出错,提示说: 附加数据库时出错。有关详细信息,请单击“消息”列中的超链接

            其中一种解决办法:可能是数据库权限不够,要 把.MDF和.LDF两个数据库文件都打开权限          要记得 把同名的需要重新配置的文件删除之后重新附加 !!         操作步骤如下:         对于.MDF文件:右键,点击“属性”         点击“安全”      

    2024年01月18日
    浏览(82)
  • SQL Server数据库 -- 表的创建与管理

    一、数据表的组成 二、创建数据表 表的创建 表的查看 表的增加 表的修改 表的删除、 三、表的架构操作 四、总结 上次博客写到了数据库的创建与管理,但是创建的库里面什么东西都没有,现在我们需要在库里面添加数据表内容   在创建表之前,我们需要先知道表里面有哪

    2024年02月11日
    浏览(77)
  • Windows server 2016——SQL server 数据库和表的管理

    作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。  公众号: 网络豆  座右铭:低头赶路,敬事如仪 个人主页: 网络豆的主页​​​​​   目录 写在前面 介绍 一.SQL Server的数据存储结构 1.文件类型 二.数据库管理 1.创建数据库  2.扩展数据库  3

    2024年02月10日
    浏览(66)
  • SQL语言的分类:DDL(数据库、表的增、删、改)、DML(数据的增、删、改)

    数据库管理系统(数据库软件)功能非常多,不仅仅是存储数据,还要包含:数据的管理、表的管理、库的管理、账户管理、权限管理等。 操作数据库的SQL语言,基于功能,划分为4类: 1、数据定义:DDL(Data Definition Language) 2、数据操纵:DML(Data Manipulation Language) 3、数据

    2024年02月09日
    浏览(49)
  • 解决IntelliJ IDEA在Mybatis 编写mapper.xml SQL语句时不自动提示SQL语句和数据库表的问题

    在Idea中链接数据库后,发现在MySql 的console中有SQL语句提示和数据表的提示,但是在编写mapper.xml中发现并没有提示,很烦,觉得效率下降。 在百度搜索后,发现了解决方法,出现了SQL语句的提示. 解决办法: 按下alt + enter,选择Language injection settings 然后选择SQL即可,但是这种

    2024年02月16日
    浏览(54)
  • SQL Server 数据库中复制一张表数据到另一张表的详细步骤与代码示例

    在 SQL Server 数据库中,有时需要将一张表中的数据复制到另一张表中,可能是为了备份数据、进行数据迁移或其他目的。本文将详细介绍如何在 SQL Server 数据库中实现这个操作,并提供相关的 SQL 代码示例。 最常见的方法是使用 SQL 的 INSERT INTO 语句将数据从一张表复制到另一

    2024年02月07日
    浏览(57)
  • 【Sql】MVCC有关问题,以及锁,日志和主从复制原理

    目录 MVCC 解决什么问题? 实现原理 隐式字段 undo log Read View(读视图) InnoDB 对 MVCC 的实现 锁 分类 锁升级? InnoDB 的行锁? 死锁避免? 乐观锁和悲观锁 日志 主从复制原理 主从复制的作用 MySQL主从复制解决的问题 涉及3个线程 复制过程 读写分离 MVCC 一种多版本并发控制机制,用

    2024年03月14日
    浏览(44)
  • 在SQL server中用sql语句实现数据库的备份以及还原

    本文给大家提供并讲解了在SQL server中用SQL语句实现数据库的备份已经还原 假设你已经有一个数据库Student 创建备份设备,其名称为bk_Student,保存文件为D: Student.bak,并对Student数据库进行完全备份,备份到备份设备bk_ Student中。  在Student数据库中,创建一张表temp并对Student数

    2024年02月03日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包