MySQL数据库

数据库的查询

内连接

内连接有两种,一个是显示,一个是隐式

隐式内连接
格式:select * from A a ,B b where a.bid = b.bid;
显示内连接:
格式:select * from A a INNER JOIN B b ON a.fkey = b.fkey;

外连接

左外连接
以左表为基准,右表一一匹配,如果匹配上的就正常显示,匹配不上的,右表设置为null。左边数据依然显示

     格式:select * from A a LEFT  JOIN   B   b   ON   a.fkey = b.fkey;

关联条件写在on 关键字后面(主表中的外键 = 外键中的主键)

右外连接
以右表为基准,左表一一匹配,如果匹配上的就正常显示,匹配不上的,左表设置为null。右边数据依然显示

格式:select * from A a    RIGHT  JOIN   B   b   ON   a.fkey = b.fkey;

子查询
子查询也称为嵌套查询,在不同的位置,有着不同的功能以及效果

1.where 关键字
如果一个子查询出现在where条件的后面,那么该子查询就可以作为查询条件的一部分,通常该子查询只是查询出一列数据集合;
比如有三张表:
student表:

在这里插入图片描述
subject表:

在这里插入图片描述

result 表:
在这里插入图片描述

例子:
查询课程为(高等 数学-2)且分数不小于80分的学生的学号和姓名

代码的实现:
select s.StudentNo,s.StudentName from student s where s.StudentNo in(

select r.StudentNo from result r where r.SubjectNo = (select sub.SubjectNo from subject sub where sub.subjectName = “高等数学-2”)
and r.StudentResult>80

)
2.from关键字
如果在from后面出现了子查询,那么我们可以把该子查询查询出来的结果集比作一张表,从这张表中查询

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值