小菜菜 MySQL 练习解读分析 1-- 查询 "01" 课程比 "02" 课程成绩高的学生的信息及课程分数

查询 "01" 课程比 "02" 课程成绩高的学生的信息及课程分数

好的, 第一道题, 刚开始做, 就栽了个跟头, 爽歪歪, 至于怎么栽跟头的

-- 需要分析题目, 查询的是, 查询的是 (1) 学生的信息 (2) 满足条件的学生的'课程分数'(不在学生表里)需要从另外一张表得来 (3) 条件是 -"01" 课程比 "02" 课程成绩高(成绩表就满足)

因此就是, 需要获得学生的信息, 那里满足该学生的 01 课程比 02 课程高!!! 需要展示该学生的信息, 及其 01 与 02 的分数~~~ 开始来

1, 找出有 01 成绩的同学成绩信息

SELECT * from sc WHERE sc.CId='01'

查出结果如下:

2, 找出有 02 成绩的同学成绩信息

SELECT * from sc WHERE sc.CId='02'

3, 以上两种结果需要满足一定条件 (1)SId 要一致[同一人] (2) 且 01.score>02.score

然后咱们胡乱一操刀:

SELECT* FROM (SELECT * from sc WHERE sc.CId='01')as a,(SELECT * from sc WHERE sc.CId='02')as b

完美, 接下来嫁接条件 -- 行过滤 --where

然后又一操刀

SELECT* FROM (SELECT * from sc WHERE sc.CId='01')as a,(SELECT * from sc WHERE sc.CId='02')as b WHERE a.SId=b.SId AND a.score>b.score

4, 普天同庆, 好像又离开心有丢丢远, 接下来要干嘛, 我也忘了~

5, 看着拿到了 SId,score,score1, 当然是存下来, 为了后面做准备, 搞事

SELECT a.SId,a.score class1,b.score class2 FROM (SELECT * from sc WHERE sc.CId='01')as a,(SELECT * from sc WHERE sc.CId='02')as b WHERE a.SId=b.SId AND a.score>b.score

6, 开心. 然后咱们假装这是一个新表结果, 又给命名, 为 r, 和 student 一查, 查出满足

SELECT*fromstudent RIGHT JOIN

(SELECT a.SId,a.score class1,b.score class2 FROM(SELECT*fromsc WHERE sc.CId='01')asa,(SELECT*fromsc WHERE sc.CId='02')asb WHERE a.SId=b.SIdAND a.score>b.score)r

ON student.SId=r.SId

大概的就查出来了,(⊙o⊙)... 菜宝宝加油

[等等, 这里仿佛用到了 join on, 还是 right join on, 那它跟 left join,outer join,inner join ...... 各种方向的 join 有什么区别, 分别应用有撒不同呢, 小菜菜下节试着分析解读一下]

来源: https://www.cnblogs.com/ql70me/p/10329630.html

mysql中 课程1比课程2成绩高_小菜菜 MySQL 练习解读分析 1-- 查询 01 课程比 02 课程成绩高的学生的信息及课程分数...相关推荐

  1. mysql中 课程1比课程2成绩高_小菜菜mysql练习解读分析1——查询 01 课程比 02 课程成绩高的学生的信息及课程分数...

    查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数 好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的 --需要分析题目,查询的是 ...

  2. mysql中 课程1比课程2成绩高_小菜菜mysql练习解读分析1——查询 01 课程比 02 课程成绩高的学生的信息及课程分数......

    查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数 好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的 --需要分析题目,查询的是 ...

  3. mysql查询01课程比02课程_小菜菜mysql练习解读分析1——查询” 01 “课程比” 02 “课程成绩高的学生的信息及课程分数...

    查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数 好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的 --需要分析题目,查询的是 ...

  4. 小菜菜mysql练习解读分析1——查询 01 课程比 02 课程成绩高的学生的信息及课程分数...

    查询" 01 "课程比" 02 "课程成绩高的学生的信息及课程分数 好的,第一道题,刚开始做,就栽了个跟头,爽歪歪,至于怎么栽跟头的 --需要分析题目,查询的是 ...

  5. mysql查询01课程比02课程_小菜菜mysql练习解读分析2——查询存在 01 课程但可能不存在 02 课程的情况(不存在时显示为 null )...

    "查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )" --翻译为:课程表里面,存在01的信息,未必满 ...

  6. mysql查询课程1比课程2低的,小菜菜mysql练习解读分析2——查询存在quot; 01 quot;课程但可能不存在quot; 02 quot;课程的情况(不存在时显示为 null ),m...

    小菜菜mysql练习解读分析2--查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null ),mysqlnull "查询 ...

  7. 查询“ 01 “课程比“ 02 “课程成绩高的学生的信息及课程分数

    这个是一个比较经典的sql面试题,面试的难度挺大的,这里我将详细讲解,怎么使用这个方法进行查询操作. student(Sid,Sname,Sage,Ssex) Sid 学生编号,Sname 学生姓名, ...

  8. 小菜菜mysql练习解读分析2——查询存在 01 课程但可能不存在 02 课程的情况(不存在时显示为 null )...

    "查询存在" 01 "课程但可能不存在" 02 "课程的情况(不存在时显示为 null )" --翻译为:课程表里面,存在01的信息,未必满 ...

  9. MySQL中 修改语句使用的关键字是什么_表示修改一个数据库对象的SQL关键字是什么...

    表示修改一个数据库对象的SQL关键字是:ALTER.在数据库中,可以使用"ALTER TABLE"语句来改变原有表的结构,可以在已有的表中添加.删除或修改列. 本教程操作环境:wi ...

最新文章

  1. 考研计算机专业课怎么复习,2016考研计算机专业课如何复习?
  2. vs2015 全局头文件 库文件引用设置方法
  3. gitlab在centons环境下的安装及使用
  4. 使用named_mutex实现读写锁,实现进程之间读共享写独占
  5. java timezone_Java TimeZone useDaylightTime()方法与示例
  6. 流行的某导航网站系统源码 收录系统源码
  7. 执行quartz报错java.lang.NoClassDefFoundError: javax/transaction/UserTransaction
  8. NMAP命令探测端口是否开通
  9. Win10专业版永久激活
  10. 每天接触互联网 了解互联网是什么
  11. 从指数构建原理看待A股的三千点魔咒
  12. 为什么双绞线可以屏蔽外部磁场干扰?
  13. 常用离散、连续分布及期望、方差总结
  14. 蝙蝠侠oracle漫画,DC6月 蝙蝠侠与猫女的婚礼及联动 刊物简介和封面
  15. Android 求时间差
  16. 【高项】人力资源管理(ITTO)
  17. 关于System.Windows.Baml2006.TypeConverterMarkupExtension引发的异常
  18. Gartner2021新兴技术和趋势影响力雷达图:四项颇具影响力的技术
  19. 编写autojs脚本时,vscode连接不上手机解决办法
  20. PB中的82个实用技巧

热门文章

  1. linux中shell俄罗斯方块源代码,跟我学shell编程之shell版本的俄罗斯方块
  2. 【Head First 设计模式】策略模式
  3. 设计模式【14】——策略模式( Strategy 模式)
  4. linux print不换行符,awk print 分隔符_awk print 不换行_awk print『』
  5. 当着众多MM脱裤子放屁
  6. 陆游感慨不已,怅然久已,乘醉写成《钗头凤》
  7. 【ASP.NET】演绎GridView基本操作事件
  8. QQ小程序-用户登录的简单实现
  9. 文件夹的隐藏选项为灰色,无法更改
  10. while和do while区别?