from
class
where
c_name=
‘一班’
))2
.select c.c_name,女生人数=
sum
(s.s_id),平均分=
avg
(s.score)
from
classes cinner
join
student_class sc
on
sc.c_id=c.c_idinner
join
students s
on
s.s_id=sc.s_idwhere s.sex=
‘女’
group
by
c.c_name
2.一道SQL语句面试题,关于group by表内容:
info 表
date result
2005-05-09 win
2005-05-09 lose
2005-05-09 lose
2005-05-09 lose
2005-05-10 win
2005-05-10 lose
2005-05-10 lose
如果要生成下列结果, 该如何写sql语句?
win lose
2005-05-09 2 2
2005-05-10 1 2
答案:
(
1
)
select
date
,
sum
(
case
when
result
= “win”
then
1
else
0
end
)
as
“win”,sum
(
case
when
result
= “lose”
then
1
else
0
end
)
as
“lose”
from
info
group
by
date
;(
2
)
select
a.date, a.result
as
win, b.result
as
lose
from(
select
date
,
count
(
result
)
as
result
from
info
where
result
= “win”
group
by
date
)
as
ajoin
(
select
date
,
count
(
result
)
as
result
from
info
where
result
= “lose”
group
by
date
)
as
bon
a.date = b.date;
2.学生成绩表(stuscore):
3.表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列
select
(
case
when
a > b
then
a
else
b
end
), (
case
when
b > c
then
b
else
c
end
)
from
table
;
有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):? |
大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。?
显示格式:?
语文 数学 英语?
及格 优秀 不及格?
select
(case when 语文>=80 then ‘优秀’
when 语文>=60 then ‘及格’
else ‘不及格’) as 语文,
(case when 数学>=80 then ‘优秀’
when 数学>=60 then ‘及格’
else ‘不及格’) as 数学,
(case when 英语>=80 then ‘优秀’
when 英语>=60 then ‘及格’
else ‘不及格’) as 英语,
from table
|
|
5.姓名:name 课程:subject 分数:score 学号:stuid
张三 数学 89 1
张三 语文 80 1
张三 英语 70 1
李四 数学 90 2
李四 语文 70 2
李四 英语 80 2
题解:
1.计算每个人的总成绩并排名(要求显示字段:姓名,总成绩)
答案:select name,sum(score) as allscore from stuscore group by name order by allscore
2.计算每个人的总成绩并排名(要求显示字段: 学号,姓名,总成绩)
答案:select distinct t1.name,t1.stuid,t2.allscore from stuscore t1,( select stuid,sum(score) as allscore from stuscore group by stuid)t2where t1.stuid=t2.stuidorder by t2.allscore desc
3.计算每个人单科的最高成绩(要求显示字段: 学号,姓名,课程,最高成绩)
答案:select t1.stuid,t1.name,t1.subject,t1.score from stuscore t1,(select stuid,max(score) as maxscore from stuscore group by stuid) t2where t1.stuid=t2.stuid and t1.score=t2.maxscore
4.计算每个人的平均成绩(要求显示字段: 学号,姓名,平均成绩)
答案:select distinct t1.stuid,t1.name,t2.avgscore from stuscore t1,(select stuid,avg(score) as avgscore from stuscore group by stuid) t2where t1.stuid=t2.stuid
5.列出各门课程成绩最好的学生(要求显示字段: 学号,姓名,科目,成绩)
答案:select t1.stuid,t1.name,t1.subject,t2.maxscore from stuscore t1,(select subject,max(score) as maxscore from stuscore group by subject) t2where t1.subject=t2.subject and t1.score=t2.maxscore
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
r0OJOiM-1713084364640)]
[外链图片转存中…(img-TvhaVyTF-1713084364641)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-RrhYPPIi-1713084364641)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!