zoukankan      html  css  js  c++  java
  • SQL排序

    今天经理出了题SQL语句:每个学生按照语文成绩的排名,如果没有成绩那就排名最后,要求有列 排名名次,学生姓名,成绩
    2张表分别:

    SQL排序 - 小蛇 - 小蛇--
    SQL排序 - 小蛇 - 小蛇--

     rank () over:

    select rank () over (order by a.Score desc ) as 排名名次,a.SName as 学生姓名,a.Score as 成绩 from
    (
    select TScore.Score as score,TStudent.SName from TStudent left join TScore on TScore.Sno =TStudent.SNo
    where isnull(TScore.CourseID,'A02')='A02') as a order by a.Score desc


    SQL排序 - 小蛇 - 小蛇--
    如果成绩为空的话序号就都显示一样

    row_number() over :

    select row_number() over  (order by a.Score desc ) as 排名名次,a.SName as 学生姓名,a.Score as 成绩 from
    (
    select TScore.Score as score,TStudent.SName from TStudent left join TScore on TScore.Sno =TStudent.SNo
    where isnull(TScore.CourseID,'A02')='A02') as a order by a.Score desc


    SQL排序 - 小蛇 - 小蛇--
    row_number() over 按照行来排序

    dense_rank () over:

    select dense_rank () over(order by a.Score desc ) as 排名名次,a.SName as 学生姓名,a.Score as 成绩 from
    (
    select TScore.Score as score,TStudent.SName from TStudent left join TScore on TScore.Sno =TStudent.SNo
    where isnull(TScore.CourseID,'A02')='A02') as a order by a.Score desc


    SQL排序 - 小蛇 - 小蛇--
    如果成绩是一样的话,序号也显示一样,好比说John的成绩是77,那他的排名也是3,而Marry的排名是4

  • 相关阅读:
    c# 时间操作
    JAVA file文件操作
    HttpServletRequest 转换成MultipartHttpServletRequest
    【日常笔记】java spring 注解读取文件
    【日常笔记】mybatis 处理 in 语句的使用
    购物车小程序
    Python中的r+和a+
    markdown基本语法
    markdown箭头的处理
    markdown中如何插入公式
  • 原文地址:https://www.cnblogs.com/tony312ws/p/2127222.html
Copyright © 2011-2022 走看看