D4-练习

作者: 喝奶茶不加奶茶 | 来源:发表于2020-06-28 18:22 被阅读0次

已有表student和score



1、查询同时参加计算机和英语考试的学生的信息
思考过程:
select stu_id from score where c_name in ('计算机','英语');
select * from score where c_name in ('计算机','英语');
select * from score where c_name in ('计算机','英语') group by stu_id;
select * from score where c_name in ('计算机','英语') group by c_name;
?这个同时参加是应该怎么体现,次数?count(id)=2?
不知道同时如何体现,可以先查询满足一部分的信息
?这个学生信息是指所有的信息吗?需要把两个表的内容合在一起吗?
是指所有的信息。

拆解一下问题

参考答案:
select stu.* from student as stu
inner join score as s1
inner join score as s2
on
s1.stu_id = s2.stu_id
and stu.id = s1.stu_id
and stu.id = s2.stu_id
where s1.c_name = '计算机'
and s2.c_name = '英语' ;


注意:可以连着两个连接。

2、查询计算机考试成绩按从高到低进行排序
select * from score where c_name='计算机' order by grade desc;


3、查询姓张或者姓王的同学的姓名、院系和考试科目及成绩
思考过程:
(1)select * from score as sc left join student as s on s.id=sc.stu_id where s.name like '张%' or s.name like '王%';
(2)select t.name,t.department,t.c_name,t.grade from
(select * from score as sc left join student as s on s.id=sc.stu_id where s.name like '张%' or s.name like '王%' ) as t ;


注意:两个模糊逻辑匹配的写法 where 字段1 like A or 字段2 like B

4、查询都是湖南的学生的姓名、年龄、院系和科目及成绩
思考过程:
(1)select * from student where address like '湖南%';
(2)select t.name,t.department,t.c_name,t.grade, t.address from
(select * from score as sc left join student as s on s.id=sc.stu_id where address like '湖南%' ) as t ;
(3)select t.name,t.department,t.c_name,t.grade,date_format(now(),'%Y')-t.birth as age,t.address from
(select * from score as sc left join student as s on s.id=sc.stu_id where address like '湖南%' ) as t ;

image.png

注意:一直birth年份,如何计算年龄,这一部分还需要后续深化学习。
这里的年龄可以直接写成: 2020-birth as age。
错误记录
1、ERROR 1248 (42000): Every derived table must have its own alias


https://www.cnblogs.com/quan-coder/p/9116703.html

2、ERROR 1060 (42S21): Duplicate column name 'id'
问题背景:
通过左连接创建了一个表,但是存在重复的字段名称,应该怎么办?
可以先修改连接前的表的字段名称,然后再进行连接。



发现一个问题,字段名称为‘index’会出现错误,所以建议最好不要改字段名为index,举例如下:


总结:
拿到一个题目,首先需要分清逻辑,理清查询先后;其次,在遇到问题时可以多换角度解决问题,不要死磕。

相关文章

  • D4-练习

    已有表student和score 1、查询同时参加计算机和英语考试的学生的信息思考过程:select stu_id...

  • 教练的提问练习D4-形式

    今天是提问练习第4天—— 请用“形式”这个词语,提出最少10个问题 Q1.当看到形式这个词的时候,我想到了什么呢?...

  • D4-香香21天简笔画打怪练习

  • 人本主义心里学 D4-走出自我迷失:往空洞里填满体验与感受

    D4-走出自我迷失:往空洞里填满体验与感受 “不谈过去,不谈将来,不谈他人,不谈应该,只谈自己,自己这几天...

  • D4-海边

    小目标是每周能来一次海边 不做别的,只是看看海,就挺好。 姐姐下午的兴趣班正好在环岛路,每周打卡的时间也就放在了今...

  • 20191219爱美丽亲子时间管理践行第4天

    打卡日期:2019年12月19日 累计打卡:4天 #健康规律生活是第一生产力#D4-易效能践行 12.19 ?孩子...

  • 丽江记

    一、行程 行程概述D1-拉市海,住丽江D2-泸沽湖,住泸沽湖D3-泸沽湖,回住丽江D4-玉龙雪山,住丽江D5-返程...

  • D4-分类思维

    分类思维是一种模块化思维。具有同类性质的人事物聚集在一起形成类别。 ...

  • D4-自我觉察

    昨天早上,看完四月分享的她和老公的关系、以及自我的觉察,就特别感慨想写写我和熊爸现在的关系。从大学相恋到现在,已经...

  • D4-查询2

    当数据量过大时,在一页中查看数据是一件非常麻烦的事情 4.1 分页 语法:limit start, count 限...

网友评论

    本文标题:D4-练习

    本文链接:https://www.haomeiwen.com/subject/sejwfktx.html