首页 > 数据库技术 > 详细

Mysql常见SQL查询应用场景

时间:2019-08-10 19:12:42      阅读:99      评论:0      收藏:0      [点我收藏+]

场景一:

  某场射击比赛,张三、李四、王五三人参加比赛。

  射击比赛规则:共进行三轮比赛;三轮比赛结束后,取最优成绩作为个人最佳成绩进行排名。

  设计数据库表:

CREATE TABLE `TEST` (
  `ID` int(11) NOT NULL,
  `NAME` varchar(45) DEFAULT NULL COMMENT 名称,
  `SCORE` int(11) DEFAULT NULL COMMENT 分数,
  `ROUND` int(11) DEFAULT NULL COMMENT 回合,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

  插入数据:
    三轮成绩下来
    张三分别是9,10,10;

    李四分别是10,9,8;

    王五分别是9,8,8;

 技术分享图片

  通过排序后可知,要取到的数据是ID分别为4,2,3的数据

技术分享图片

   通过对人名进行分组,获得人名及其所创造的最好成绩

技术分享图片

  通过表关联查询得出下面结果

技术分享图片

  此时需要对结果进行分组并取出每组ID最小值

技术分享图片

  对取出的ID查询并排序

 技术分享图片

  这就是取出同一个表每组中最优数据。

  

  如若再加一条件,当两数据最后得分相同,则平均分更高的排名靠前,都相同则按照名称排序。

技术分享图片

技术分享图片

技术分享图片

 

 

  

Mysql常见SQL查询应用场景

原文:https://www.cnblogs.com/feiyang930112/p/11332187.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!