【链表查询】A(学生表[id,姓名]),B(成绩表[id,课程名,成绩])两个表通过id进行关联。

链表查询试题

题:A(学生表[id,姓名]),B(成绩表[id,课程名,成绩])两个表通过id进行关联。

  • SQL Aggregate函数:avg() count() max() min() sum() first() last()

注:因为代码过长,我就分行写方便阅读,其实是一句执行代码。

1.查询’李四’的语文成绩
//方法一:
Select 姓名,成绩,课程名 from 成绩表 join 学生表 on 成绩表.id = 学生表.id 
where 课程名='语文' and 姓名='李四';
//方法二:
Select 姓名,成绩,课程名 from 成绩表,学生表 where 成绩表.id = 学生表.id
and 课程名='语文' having (姓名 = ‘李四’);

2.查询全班‘英语的成绩
Select 姓名,成绩,课程名 from 成绩表 join 学生表 on 成绩表.id = 学生表.id 
where 课程名 = '英语';
3.查询语文分数与张三一样的学生姓名
Select 姓名,成绩,课程名 from 成绩表 join 学生表 on 成绩表.id = 学生表.id 
where 课程名 = '英语' and score=(Select 姓名,成绩,课程名 from 成绩表 
join 学生表 on 成绩表.id = 学生表.id where 课程名='语文' and 姓名='李四');
4.全班每一个人的总成绩并降序排序
select 姓名,sum(成绩) 总分 from 成绩表,学生表 
where 成绩表.id = 学生表.id group by name order by sum(成绩) desc ;
//升序:asc 降序:desc
5.全班的平均分
Select avg(成绩) as 平均成绩 from 成绩表;
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值