MySQL内连接、左连接、右连接的使用以及区别

摘要:
首先先建两个表,student表和score表select*fromstudent;student表数据如下:select*fromscore;score表数据如下:可以看到students表中stu_id为16048008的记录对应score表没有数据;1.内连接只显示两表中有关联的数据select*fromstudentinnerjoinscoreonstudent.sid=score.stu

首先先建两个表,student表和score表

select * from student;

student表数据如下:

MySQL内连接、左连接、右连接的使用以及区别第1张

select * from score;

score表数据如下:

MySQL内连接、左连接、右连接的使用以及区别第2张MySQL内连接、左连接、右连接的使用以及区别第3张

可以看到students表中stu_id为16048008的记录对应score表没有数据;

1.内连接只显示两表中有关联的数据

select * from student inner join score on student.sid = score.stu_id;

MySQL内连接、左连接、右连接的使用以及区别第4张

MySQL内连接、左连接、右连接的使用以及区别第5张

从表中可以看出student表中sid=16048008,sid=16048009,sid=160480010在score表中没有对应数据,所以内连接的结果不显示这三名学生

2.左连接显示左表所有数据,右表没有对应的数据用NULL补齐,多了的数据删除

select * from student left join score on student.sid = score.stu_id;

MySQL内连接、左连接、右连接的使用以及区别第6张

MySQL内连接、左连接、右连接的使用以及区别第7张

从结果可以看出sid=16048008,sid=16048009,sid=160480010在score表中没有数据的部分用NULL代替

3.右连接显示右表所有数据,左表没有对应的数据用NULL对齐,多了的数据删除

select * from student right join score on student.sid = score.stu_id;

MySQL内连接、左连接、右连接的使用以及区别第8张

MySQL内连接、左连接、右连接的使用以及区别第9张

score表中没有的数据student表也不显示

免责声明:文章转载自《MySQL内连接、左连接、右连接的使用以及区别》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇EF Code First Migrations数据库迁移gprof——GNU性能分析工具下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql常用语句、命令(增删改查功能)

修改数据库的字符集mysql>use mydbmysql>alter database mydb character set utf8;创建数据库指定数据库的字符集mysql>create database mydb character set utf8; 查看database的字符集! show variables like 'coll...

mysql 视图

一、使用视图的理由是什么?1.安全性。一般是这样做的:创建一个视图,定义好该视图所操作的数据。之后将用户权限与视图绑定。这样的方式是使用到了一个特性:grant语句可以针对视图进行授予权限。 2.查询性能提高。3.有灵活性的功能需求后,需要改动表的结构而导致工作量比较大。那么可以使用虚拟表的形式达到少修改的效果。这是在实际开发中比较有用的。例子:假如因为某...

oracle pl/sql 变量

一、变量介绍在编写pl/sql程序时,可以定义变量和常量;在pl/sql程序中包括有:1)、标量类型(scalar)2)、复合类型(composite) --用于操作单条记录3)、参照类型(reference) --用于操作多条记录4)、lob(large object)    二、标量(scalar)——常用类型1)、在编写pl/sql块时,如果要使用...

Linux配置 依赖安装

基础知识: 1 OS Operation System 作用:控制硬件,服务软件 2 VMware虚拟机: 虚拟出一台计算机环境 配置两个虚拟网卡,适配器里查看 3 在虚拟机上安装操作系统Linux 4 Linux版本: 版本:内核版本,发行版本(各个公司对其优化) 5 目录介绍 root:系统管理员登录的默认目录 home:其他用户进来的默认目录 usr...

日记账导入API

PROCEDURE IMPORT_GL_INTERFACE IS CURSOR CUR_GL_TEMP IS SELECT GL.REFERENCE1, --批名 GL.REFERENCE2, --批说明 GL.GL_NAME, --日记账 GL.DESCRIPTION, --日记账说明 GL.SET_BOOK_NAME, --分类账套 GL.PERIO...

SQL批量添加数据库中所有用户数据表描述

--SQL批量添加数据库中所有用户数据表描述 --操作说明:请先准备一数据表为名称为tblist,表名字段tbname nvarchar(255),数据表描述字段chnname nvarchar(255),将所有已存在的数据表和对应描述添加到数据表tblist中 --脚本编写步骤:1、游标读取所有数据表名;2、读取指定数据表描述;3、判断指定数据表描述是否...