为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第15天+MySQL刷题-04

标签:
测试
模块名
描述
课程名称
全能软件测试工程师
课程章节
MySQL刷题
打卡知识进程
知识进程:15 / 21
1.node.js初体验windows
2.commonjs-回顾ES6模块化
3.commonjs的语法介绍
4.commonjs和ES6 Module的区别
5.Bug分类
6.node.js和前端js的区别
7.左关联
8.聚合函数
9.【案例】统计上班时间
10.数据库的索引
11.索引的分类
12.查询数学成绩比语文成绩高的学生
13.查询平均成绩大于80分的学生
14.学生总成绩排序
15.学过体育课学生的年龄
主讲老师
大周
学习开始时间
2023.02.20 20:50
学习结束时间
2023.02.20 21:20
总计时
30 min
课程收获/主要内容/编程目标
学过体育课学生的年龄
学习感受/感想/领悟(心得)
我应该去工作。

编程目标:学过体育课学生的年龄

编程思路:
日期之间的计算,用什么样的函数?
怎么证明这个人学过体育课?课程表中看让它等于体育,
怎么获取课程表中同学的年龄?涉及到同学,获取同学的姓名。

grade_id,我们要跟年级表做关联,年级跟班级表关联,班级跟学生表关联。
然后我们就获取到了具体学生学的体育课的成绩的信息,比如年龄。

select s.student_name
from course c
join grade g
on c.grade_id = g.id
join class cl
on cl.grade_id = g.id
join student s
on s.class_id = cl.id
where c.course_name = "体育"

获取体育课的学生。

怎么计算年龄?


拿现在的时间 减去 出生日期 即可。

有些东西没用过,再想也想不出来。
完整代码如下:

select s.student_name,
datediff(curdate(),s.student_birthday) / 365
from course c
join grade g on c.grade_id = g.id
join class cl on cl.grade_id = g.id
join student s on s.class_id = cl.id
where c.course_name = "体育"

datediff(curdate(),s.student_birthday) 天换成年 除以 365:

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消