MySQL经典50题目,必须拿下!

Mysql经典练习题50题 网上关于这套练习题较多使用的是比较老的mysql版本,我使用的是 Server version: 8.0.15 MySQL 练习数据 数据表 --1.学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表 Course(CId,Cname,TId) --CId --课程编号,Cna... 阅读详情

本文中介绍的是MySQL经典50题的第21-25题目,主要涉及的知识点包含:

  • 分组统计求和,百分比

  • 如何利用SQL实现排序

  • having使用

  • union拼接

5个题目是:

  • 查询不同老师所教不同课程平均分从高到低显示

  • 查询所有课程的成绩第2名到第3名的学生信息及该课程成绩

  • 统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[0-60]及所占百分比

  • 查询学生的平均成绩及名次

  • 查询各科成绩前三名的记录

题目21

题目需求

查询不同老师所教不同课程平均分从高到低显示

分析过程

涉及到的表主要是

老师:Teacher

课程:Course,作为主表

成绩:Score

通过3个表的连接求出来即可

SQL实现

先找出每个老师教授了哪些课程:

select 
 c.c_name
 ,t.t_name
from Course c
left join Teacher t
on c.t_id = t.t_id;

将上面的结果和成绩表连接起来:

select 
 c.c_name
 ,t.t_name
 ,round(avg(s.s_score),2)  score   -- 课程分组后再求均值
from Course c   -- 主表,通过两次连接
left join Teacher t
on c.t_id = t.t_id
left join Score s
on c.c_id = s.c_id
group by c.c_id   -- 课程分组
order by 3 desc;  -- 降序

题目22

题目需求

查询所有课程的成绩第2名到第3名的学生信息及该课程成绩

分析过程

成绩:Score

学生信息:Student

我们通过取出每科的第2、3名拼接起来再取出学生信息

SQL实现

自己的方法

1、课程表和成绩表连接起来,显示所有的课程和成绩信息

select 
 s.s_id
 ,s.c_id
 ,s.s_score
 ,c.c_name
from Score s
join Course c
on s.c_id = c.c_id

2、查出全部的语文成绩

select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc;

3、我们找出语文的第2、3的学生

select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc
limit 1, 2;

4、同时求出语文、数学、英语的分数,并且通过union拼接

-- union连接

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc
limit 1, 2)

union

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '数学'
order by s.s_score desc
limit 1, 2)

union
((select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '英语'
order by s.s_score desc
limit 1, 2))

5、将上面的结果学生信息表进行连接即可

好歹是实现了????

-- 最终脚本
-- !!!!真的需要好好优化下

select
 s.s_id
 ,s.s_name
 ,t.c_name
 ,t.s_score
from Student s
join (-- union连接

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc
limit 1, 2)

union

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '数学'
order by s.s_score desc
limit 1, 2)

union
((select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '英语'
order by s.s_score desc
limit 1, 2)))t  -- 临时表t

on s.s_id = t.s_id
和第25题相同的方法

1、以语文为例,首先我们找出前3名的成绩(包含相同的成绩)

-- 语文
select
 a.s_id
 ,a.c_id
 ,a.s_score   -- 3、此时a表的成绩就是我们找的  
from Score a
join Score b
on a.c_id = b.c_id
and a.s_score <= b.s_score  -- 1、判断a的分数小于等于b的分数,要带上等号
and a.c_id="01"
group by 1,2
having count(b.s_id) <= 3  -- 2、b中的个数至少有3个,应对分数相同的情形
order by 3 desc
limit 1,2
-- 语文
select
 a.s_id
 ,a.c_id
 ,a.s_score   -- 3、此时a表的成绩就是我们找的  
from Score a
join Score b
on a.c_id = b.c_id
and a.s_score <= b.s_score  -- 1、判断a的分数小于等于b的分数,要带上等号
and a.c_id="01"
group by 1,2
having count(b.s_id) <= 3  -- 2、b中的个数至少有3个,应对分数相同的情形
order by 3 desc
limit 1,2;   -- 取得第2、3名

在通过数学和英语的类似操作得到2、3名的成绩,再进行拼接即可

题目23

题目需求

统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[0-60]及所占百分比

分析过程

课程:Course

成绩:Score

通过case语句来进行判断,count语句进行统计,sum语句进行求和

SQL实现

自己的方法

1、如何对每个成绩进行分组展示:ABCD代表相应的等级

select 
 c_id
 ,s_score
 ,case when s_score >= 85 and  s_score<= 100 then 'A'   -- 大小关系必须分两次写,一次写的话MySQL无法识别
  when 70 <= s_score and s_score < 85 then 'B'
  when 60 <= s_score and s_score < 70 then 'C'
  when 0 <= s_score and s_score < 60 then 'D'
  else '其他' end as 'category'
from Score s;

2、将两个表关联起来展示数据

-- 1、查看全部课程和成绩信息

select 
 s.c_id
 ,c.c_name
 ,s.s_score
 ,case when s.s_score >= 85 and  s.s_score<= 100 then 'A'   -- 大小关系必须分两次写,一次写的话MySQL无法识别
  when 70 <= s.s_score and s.s_score < 85 then 'B'
  when 60 <= s.s_score and s.s_score < 70 then 'C'
  when 0 <= s.s_score and s.s_score < 60 then 'D'
  else '其他' end as 'category'
from Score s
join Course c 
on s.c_id = c.c_id;

3、完整代码

select
 s.c_id  编号
 ,c.c_name  科目
 ,sum(case when s.s_score >= 85 and  s.s_score<= 100 then 1 else 0 end) "[85,100]人数"
 ,round(100 * (sum(case when s.s_score >= 85 and  s.s_score<= 100 then 1 else 0 end) / sum(case when s.s_score then 1 else 0 end)), 2) as '[85,100]百分比'
 ,sum(case when s.s_score >= 70 and  s.s_score<= 85 then 1 else 0 end) "[70,85]人数"
 ,round(100 * (sum(case when s.s_score >= 70 and  s.s_score<= 85 then 1 else 0 end) / sum(case when s.s_score then 1 else 0 end)), 2) as '[70,85]百分比'
 ,sum(case when s.s_score >= 60 and  s.s_score<= 70 then 1 else 0 end) "[60,70]人数"
 ,round(100 * (sum(case when s.s_score >= 60 and  s.s_score<= 70 then 1 else 0 end) / sum(case when s.s_score then 1 else 0 end)), 2) as '[60,70]百分比'
 ,sum(case when s.s_score >= 0 and  s.s_score<= 60 then 1 else 0 end) "[0,60]人数"
 ,round(100 * (sum(case when s.s_score >= 0 and  s.s_score<= 60 then 1 else 0 end) / sum(case when s.s_score then 1 else 0 end)), 2) as '[0,60]百分比'
from Score s
left join Course c
on s.c_id = c.c_id
group by s.c_id, c.c_name
参考方法

1、先统计每个阶段的人数和占比

select 
 c_id
 ,sum(case when s_score > 85 and s_score <=100 then 1 else 0 end) as '85-100'
 ,round(100 * (sum(case when s_score > 85 and s_score <= 100 then 1 else 0 end) / count(*)), 2) '占比'
from Score 
group by c_id;  -- 分课程统计总数和占比


-- 方式2
select 
 c_id
 ,sum(case when s_score > 85 and s_score <=100 then 1 else 0 end) as '85-100'
 ,round(100 * (sum(case when s_score > 85 and s_score <= 100 then 1 else 0 end) / count(case when s_score then 1 else 0 end)), 2) '占比'   -- 不同count(*)
from Score 
group by c_id;  

注意对比:

2、我们将4种情况同时查出来

select 
 c_id
 ,sum(case when s_score > 85 and s_score <=100 then 1 else 0 end) as '85-100'
 ,round(100 * (sum(case when s_score > 85 and s_score <= 100 then 1 else 0 end) / count(*)), 2) '[85,100]占比'
 ,sum(case when s_score > 70 and s_score <=85 then 1 else 0 end) as '70-85'
 ,round(100 * (sum(case when s_score > 70 and s_score <= 85 then 1 else 0 end) / count(*)), 2) '[70,85]占比'
 ,sum(case when s_score > 60 and s_score <=70 then 1 else 0 end) as '60-70'
 ,round(100 * (sum(case when s_score > 60 and s_score <= 70 then 1 else 0 end) / count(*)), 2) '[60,70]占比'
 ,sum(case when s_score >=0 and s_score <=60 then 1 else 0 end) as '0-60'
 ,round(100 * (sum(case when s_score > 0 and s_score <= 60 then 1 else 0 end) / count(*)), 2) '[0,60]占比'
from Score 
group by c_id;  -- 分课程统计总数和占比

3、将科目名称连接起来

-- 整体和自己的方法是类似的
select 
 s.c_id
 ,c.c_name
 ,sum(case when s_score > 85 and s_score <=100 then 1 else 0 end) as '85-100'
 ,round(100 * (sum(case when s_score > 85 and s_score <= 100 then 1 else 0 end) / count(*)), 2) '[85,100]占比'
 ,sum(case when s_score > 70 and s_score <=85 then 1 else 0 end) as '70-85'
 ,round(100 * (sum(case when s_score > 70 and s_score <= 85 then 1 else 0 end) / count(*)), 2) '[70,85]占比'
 ,sum(case when s_score > 60 and s_score <=70 then 1 else 0 end) as '60-70'
 ,round(100 * (sum(case when s_score > 60 and s_score <= 70 then 1 else 0 end) / count(*)), 2) '[60,70]占比'
 ,sum(case when s_score >=0 and s_score <=60 then 1 else 0 end) as '0-60'
 ,round(100 * (sum(case when s_score > 0 and s_score <= 60 then 1 else 0 end) / count(*)), 2) '[0,60]占比'
from Score s
left join Course c
on s.c_id = c.c_id
group by s.c_id, c.c_name;    -- 分课程统计总数和占比

题目24

题目需求

查询学生的平均成绩及名次

分析过程

学生:Student

成绩:Score

平均:avg函数

名次:通过排序来解决

SQL实现

自己的方法

1、先求出每个人的平均分

-- 自己的方法

select 
 sc.s_id
 ,s.s_name
 ,round(avg(sc.s_score),2)  avg_score
from Score sc
join Student s
on sc.s_id=s.s_id
group by sc.s_id,s.s_name

2、我们对上面的结果进行排序

!!!MySQL5中是没有rank函数的,需要自己实现排序功能

-- MYSQL5.7中没有rank函数,所以通过自连接实现

select
 t1.s_id
 ,t1.s_name
 ,t1.avg_score
 ,(select count(distinct t2.avg_score) 
  from (select 
            sc.s_id
            ,s.s_name
            ,round(avg(sc.s_score),2)  avg_score
          from Score sc
          join Student s
          on sc.s_id=s.s_id
          group by sc.s_id,s.s_name)t2    -- 临时表t2也是上面的结果
  where t2.avg_score >= t1.avg_score
  ) rank

from (select 
        sc.s_id
        ,s.s_name
        ,round(avg(sc.s_score),2)  avg_score
      from Score sc
      join Student s
      on sc.s_id=s.s_id
      group by sc.s_id,s.s_name)t1   -- 临时表t1就是上面的结果
order by t1.avg_score desc;
参考方法
select
 a.s_id  -- 学号
 ,@i:=@i+1 as '不保留空缺排名'   -- 直接i的自加
 ,@k:=(case when @avg_score=a.avg_s then @k else @i end) as '保留空缺排名'
 ,@avg_score:=avg_s as '平均分'  -- 表a中的值

from (select 
       s_id
       ,round(avg(s_score), 2) as avg_s
      from Score 
      group by s_id
      order by 2 desc)a    -- 表a:平均成绩的排序和学号
      ,(select @avg_score:=0, @i:=0, @k:=0)b   -- 表b:通过变量设置初始值

实现rank函数

select 
 s.s_name  -- 姓名
 ,s.s_score  -- 成绩
 ,(select count(distinct t2.s_score)
    from Score t2
    where t2.s_score >= t1.s_score) rank   -- 在t2分数大的情况下,统计t2的去重个数
from Score t1
order by t1.s_score desc;   -- 分数降序排列

举例子来说明这个脚本:

姓名成绩
张三89
李四90
王五78
小明98
小红60
  1. 当t1.s_score=89,满足t2.s_score > = t1.s_score的有98,90和89,此时count(distinct t2.s_score) 的个数就是3

  2. 当t1.s_score=90,满足t2.s_score > = t1.s_score的有98和90,此时count(distinct t2.s_score) 的个数就是2

  3. 当t1.s_score=78,满足t2.s_score > = t1.s_score的有98、90、89和78,此时count(distinct t2.s_score) 的个数就是4

  4. 当t1.s_score=98,满足t2.s_score > = t1.s_score的只有98,此时count(distinct t2.s_score) 的个数就是1

  5. 当t1.s_score=60,满足t2.s_score > = t1.s_score的有89、90、78、98、60,此时count(distinct t2.s_score) 的个数就是5

通过上面的步骤,我们发现:t1中每个分数对应的个数就是它的排名

题目25

题目需求

查询各科成绩前三名的记录

分析过程

这题和第22题是属于一个类型的:找到每个科目的指定名次的成绩,使用的表是:Score

SQL实现

自己的方法

1、首先我们找出语文的前3名

select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc   -- 降序之后取出前3条记录
limit 3;

2、通过同样的方法我们可以求出数学和英语的前3条记录,然后通过union进行联结,有待优化????

-- 自己的脚本

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '语文'
order by s.s_score desc   -- 降序之后取出前3条记录
limit 3)

union

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '数学'
order by s.s_score desc   
limit 3)

union

(select s.s_id, s.s_score, c.c_name
from Score s
join Course c on s.c_id = c.c_id
where c.c_name = '英语'
order by s.s_score desc   
limit 3)
参考方法

通过Score表的自连接,表a中的值小于表b中的值,排序之后我们取前3

select
 a.s_id
 ,a.c_id
 ,a.s_score   -- 取出a中的成绩
from Score a
join Score b
on a.c_id = b.c_id
and a.s_score <= b.s_score   -- 表b中的成绩大
group by 1,2,3
having count(b.s_id) = 3
order by 2, 3 desc;

我们通过语文这个科目来理解上面的代码:前3名是80,80,76

-- 语文
select
 a.s_id
 ,a.c_id
 ,a.s_score   -- 3、此时a表的成绩就是我们找的  
from Score a
join Score b
on a.c_id = b.c_id
and a.s_score <= b.s_score  -- 1、判断a的分数小于等于b的分数,要带上等号
and a.c_id="01"
group by 1,2
having count(b.s_id) <= 3  -- 2、b中的个数至少有3个,应对分数相同的情形
order by 3 desc;   
-- 语文

select
 a.s_id
 ,a.c_id
 ,a.s_score   -- a表的成绩
from Score a
join Score b
on a.c_id = b.c_id
and a.s_score <= b.s_score   -- 1、判断a的分数小于等于b的分数,要带上等号
group by 1,2,3
having count(b.s_id) <= 3   -- 2、b中的个数至少有3个,应对分数相同的情形
order by 2, 3 desc;   -- 课程(2)的升序,成绩()3的降序
推荐阅读:入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|年度爆款文案1).卧槽!Pdf转Word用Python轻松搞定!2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密 4).80行代码!用Python做一个哆来A梦分身 5).你必须掌握的20个python代码,短小精悍,用处无穷 6).30个Python奇淫技巧集 7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货 8).再见Python!我要学Go了!2500字深度分析!9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片点阅读原文,领AI全套资料!
SQL经典50题(MySQL版) 已知有以下4张表: 学生表:student(s_id,s_name,s_birth,s_sex) – –学号,学生姓名,出生年月,性别 成绩表:score(s_id,c_id,score) – –学号,课程号,成绩 课程表:course(c_id,c_name,t_id) – –课程号,课程名称,教师号 教师表:teacher(t_id,t_name) – –教师号,教师姓名 一、创建数据库和表 创建school数据库 创建四张表 往表里插值 创建好的4张表如下: 1.查询"01" 阅读详情

相关推荐

Mysql经典50题--第一弹

在初学时期看到了大家都在发的Mysql经典50题,做过一遍之后的第二次回顾

查数菇乐园 5633

order by 的高级用法

点击关注公众号,SQL干货及时获取后台回复:1024,获取海量学习资源导读为什么只有ORDER BY后面可以使用列别名为什么不推荐使用ORDER BY后接数字来排序为什么视图和子查询里面不能使用ORDER BY ……小伙伴们在进行SQL排序时,都能很自然的使用到ORDER BY。不管是默认ASC的升序,还是DESC降序,几乎都是信手拈来。今天给大家分享一些你可能不知道的ORDER BY用法...

SQL数据库开发 1453

MySQL学习:50道经典题目(含参考答案)(更新中)

首先根据course_id将成绩表分为两张表,筛选出" 1 "课程比" 2 "课程成绩高的学生,再与学生表关联。1. 查询" 1 "课程比" 2 "课程成绩高的学生的信息(学号、姓名、性别、出生日期)及课程分数。利用自连接,统计比当前分数高的分数有几个,排名就是几加1。使用case when语句,多个排序条件时用逗号分隔。利用课程数量,计算出所有课程数和每个学生的选课数量。先筛选与" 1 "号同学选课数量相同的同学,再剔除。10. 查询没有学全所有课程的同学的信息。选了" 1 "号同学没选的课的同学。

weixin_42661635的博客 1万+

MySQL视频教程-经典MySQL面试题

这些sql题目几乎涵盖了工作中常用的sql语句,包括内连接中的等值连接,非等值连接,自连接,又包括了外连接中的左外和右外连接。如果想要复习sql,直接将34道作业题做一遍,你就满血了。

SQL 经典50题(题目+解答)(1)

SQL 经典50题(题目+解答)(1)

Robin_Pi的博客 1万+

50道MySQL经典练习题

这个是网上流传的50道SQL练习题,最近拿来练习,刚做完,这里把我做的答案给大家做个参考,如有错误,还请告知。 另外,做题的时候先不要看答案(答案不唯一,只要满足要求即可),要有自己的一个思考过程,这样做出来才能达到最好的训练效果。(感觉做这种题是会上瘾的……) 我使用的Mysql版本是5.7.19。SQL语句可能会因数据库系统的不同会有少许差异。 这里放上MySQL语法执行的先后顺序: 7:SE...

AvenueCyy的博客 4521

一、Oracle数据库

一、简单查询 1.查询数据库表所有的列 Select * from 表名; Select 列名,列名… from 表名; 2.起别名 Select 列名 [as 别名],列名 别名… from 表名; –正常情况 Select ename as 员工姓名,sal salary from emp; –别名正好是关键字,别名需要用””括起来 Select ename as “sele...

simplehappiness7的博客 796

领域驱动新实践:COLA框架全解析——架构设计与实战案例解析

定义订单支付事件java代码解读复制代码} }Order定义Order类,继承并实现支付逻辑:java代码解读复制代码} }定义接口:java代码解读复制代码定义类,处理订单支付逻辑并持久化:java代码解读复制代码} }定义和处理订单支付事件:java代码解读复制代码} }java代码解读复制代码} }定义和接口及其实现:java代码解读复制代码java代码解读复制代码。

2401_89221445的博客 2662

sql语句练习50题(Mysql版)

表名和字段 –1.学生表 Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别 –2.课程表 Course(c_id,c_name,t_id) – –课程编号, 课程名称, 教师编号 –3.教师表 Teacher(t_id,t_name) –教师编号,教师姓名 –4.成绩表 Score(s_id,c_id,s_scor...

Coder-Wf 4684

Yolov2 训练时anchor是如何使用的?build_target

0.简略描述 1.将真值检测框变换到特征图尺度上 2.计算以特征图每个网格中心为中心点时所有锚框与真值检测框的交并比 3.取与真值检测框交并比最大的锚框的id,及真值检测框中心所在cell的id,有此,可将真值检测框与预测结果对应起来 4.计算位置回归损失,置信度损失,分类损失 1,网络的输出 图1 yolov2 网络对于检测框位置大小的输出是: 对于1个batch网络的输出的shape为[batch_size, H*W*num_anchors, 5+num_classes], 其中: num_

机器人视觉感知 2817

线性回归LinearRegression

对视频中线性回归算法的相关内容进行总结与记录 文章目录一、理论基础二、实例2.1 一元线性回归2.1.1 推导过程2.1.2 代码实现(基于numpy)2.1.3 代码实现(基于sklearn)2.2 多元线性回归2.2.1 代码实现(基于numpy)2.2.2 代码实现(基于sklearn) 一、理论基础 回归 通常是指利用某个函数,尽可能把数据样本点“串”在一起,用于描述输入变量和输出变量间的变化关系 线性回归 特点:用来把数据“串”起来的那个函数是线性的 (一元线性回归(一个自变量) &a.

邱邱邱的博客 1068

Mysql经典45道题(详解1-15)

Mysql经典45道题题解(1-15)

Hudas的博客 1万+

【电路设计】带阻滤波器实战:从理论到Twin-T陷波电路实现

本文详细介绍了带阻滤波器的原理与Twin-T陷波电路的实战应用,从基础概念到工程实现全面解析。通过具体案例展示如何设计高Q值滤波器,解决电源噪声等实际问题,并分享PCB布局和元件选型的实用技巧,助力工程师提升电路设计能力。

gg901的博客 1011

MySQl经典50题,全部都会做就是大佬了!

MySQL经典50题,全部都会做就是大佬了! 文章目录MySQL经典50题,全部都会做就是大佬了!创建表结构建表语句添加数据表关系题目参考答案1.查询" 01 "课程⽐" 02 "课程成绩⾼的学⽣的信息及课程分数2.查询同时存在" 01 "课程和" 02 "课程的情况3.查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )4.查询不存在" 01 "课程但存在" 02 "课程的情况5.查询平均成绩⼤于等于 60 分的同学的学⽣编号和学⽣姓名和平均成绩6.查询在 SC 表存在

程序员小章的博客 3760

各种AI的调试日记——辅助工作篇

记录使用各种AI(语言大模型)的心得和总结

m0_73056986的博客 1391

1、Ovirt 开源虚拟化平台安装

Ovirt虚拟化Node和Engine安装

大鱼 6266

MySQL之经典50道题

MySQL之经典50道题目一、创建数据表并插入数据 一、创建数据表并插入数据 1、学生表 Student(s_id,s_name,s_birth,s_sex) :学生编号、姓名、年月、性别 -- 1、学生表 -- Student(s_id,s_name,s_birth,s_sex) :学生编号、姓名、年月、性别 CREATE TABLE IF NOT EXISTS `Student` ( `s_id` VARCHAR (20), `s_name` VARCHAR (20) NOT NULL DEFA

qq_40216188的博客 1万+

Linux系统安装部署Redis完整教程(图文详解)

最近需要在Linux服务器安装部署Redis,参考了网上很多的文章,比较零碎,所以我自己写了一篇完整的Redis安装部署文档,在部署Redis之前重装了我的华为服务器,就是为了给大家一步步阐述我的操作过程,配合图文进行讲解更加通俗易懂!

黄团团的个人博客 6693

MySQL 经典练习 50 题(完美解答版)

MySQL 经典练习 50 题(完美解答版)创建数据库和表数据库学生表课程表教师表成绩表表关系经典练习 50 题1、查询"01"课程比"02"课程成绩高的学生的信息及课程分数2、查询"01"课程比"02"课程成绩低的学生的信息及课程分数3、查询平均成绩大于等于60分的同学的学生编号和学生姓名和平均成绩4、查询平均成绩小于60分的同学的学生编号和学生姓名和平均成绩(包括有成绩的和无成绩的)5、查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩6、查询"李"姓老师的数量7、询学过"张三"老师授课的同学

GodSuzzZ的博客 17万+

Open3D 机载点云电力线提取【2025最新版】

传统方法实现的机载点云电力线分割提取。博客长期更新,本文最新更新时间为:2025年3月23日。

点云侠的博客 4468

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

使用Hive查询mysql经典50道题

使用Hive查询mysql经典50题一、mysql经典50道题二、使用hive查询50题 一、mysql经典50道题 学生表 Student student_id student_name birth sex 1 赵雷 1990-01-01 男 2 钱电 1990-12-21 男 3 孙风 1990-05-20 男 4 李云 1990-08-06 男 5 周梅 1991-12-01 女 6 吴兰 1992-03-01 女 7 郑竹 1989-07-01 女 8 王

我玩的很开心的博客 3748

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

[Mysql] 经典 50 题

Mysql 经典 50题

licn188的博客 7852

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

面试必备:MySQL经典50题~学会SQL面试不在话下

标题 MySQL经典50题解析及答案 作者 Peter 微信 756803877 公众号 尤而小屋 时间 2021-09-02 MySQL经典50题解析及答案 下面是网传经典的MySQL50题的习题及参考答案????,供参考和学习,有更好的方法或者不恰当的地方,欢迎提出来 题目1 题目要求 查询"01"课程比"02"课程成绩高的学生的信息及课程分数 SQL实现 -- 方法1 select a.* ,b.s_score as 1_score ,c.s_score as 2.

尤尔小屋 5486

7大领域,50道经典题目,助你彻底搞定MySQL面试!

LAST_INSERT_ID将返回由Auto_increment分配的最后一个值,并且不需要指定表名称。每当行被更改时,时间戳字段将获取当前时间戳。索引是一种数据结构,可以帮助我们快速地进行数据的查找。MySQL可以使用多个字段同时建立一个索引,叫做联合索引。在联合索引中,如果想要命中索引,需要按照建立索引时的字段顺序挨个使用,否则无法命中索引。

ewii12567的博客 1385

mysql题目_<MySQL>MySQL经典50题

000.题目已知有如下4张表:学生表:student(学号,学生姓名,出生年月,性别)成绩表:score(学号,课程号,成绩)课程表:course(课程号,课程名称,教师号)教师表:teacher(教师号,教师姓名)根据以上信息按照下面要求写出对应的SQL语句。001.创建表分析表与表的关联关系:创建学生表:创建成绩表:创建课程表:创建教师表:002.插入数据insert into student...

weixin_30649293的博客 2289
上一篇: VS Code能自己编程了,GitHub推出“AI程序员”插件,根据注释自动补全代码
下一篇: 用Python制作欧洲杯可视化图表!
菜鸟学Python
博客等级 码龄9年 8062粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值