mysql学习笔记3

*爱你&永不变心* 提交于 2020-03-10 12:55:53

美妙的数据库训练和冒险开始啦,冲鸭!2333!

time order:

利用sql语句查询try库中的student,c,sc:

 

 

 

学生表信息如下:

 

 

 

 

课程表信息如下:

 

 

 

 

 

学习表信息如下:

 

 

 

 

 

 

1.两个表的笛卡尔积运算

 

 

1 select student.*,sc.* from student,sc;/*查询每个学生及其选修课程的情况,做笛卡尔积*/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.两个表的等值连接

 

 

 

 

 

 

 

 

 

3.自然连接

 

 

 

 

 

 

 

 

 

4.复杂的连接查询

 

(1)

 

/*查询选修2号课程且成绩在95分以上的学生学号,姓名及成绩*/
select student.sno,sname,grade
from student,sc
where student.sno=sc.sno
and sc.cno='2'
and sc.grade>95;

 

 

 

 

 

 

 

 

 

 

 

 

(2)

 

一上来就出现了一个bug2333:

 

 

 

 

 

 

 

 

/*查询选修了数据库课程的学生的姓名和成绩*/
select  sname,grade
from student,sc,c
where student.sno=sc.sno
and sc.cno=c.cno
and cname='数据库';

 

  

 

 

实现了多张表的连接查询!

 

 

 

 

 

 

 

(3)

 

先写一个小实验:

 

关于group by子句的:

 

 

 

 

 

 

 

进阶版:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!