zoukankan      html  css  js  c++  java
  • SQL四大排序函数

    1、ROW_NUMBER()函数作用就是将SELECT查询到的数据进行排序,每一条数据加一个序号

    SELECT 
    ROW_NUMBER() OVER (ORDER BY SCORE DESC) AS [RANK],*
    FROM Scores;

    SELECT * FROM (
    SELECT ROW_NUMBER() OVER (ORDER BY SCORE DESC) AS [RANK],*
    FROM Scores
    ) t WHERE t.RANK=2;

    2、RANK()函数,顾名思义排名函数,可以对某一个字段进行排名

    SELECT RANK() OVER (ORDER BY SCORE DESC) AS [RANK],*
    FROM Scores;

    3、DENSE_RANK()函数也是排名函数,和RANK()功能相似,也是对字段进行排名

    SELECT 
    DENSE_RANK() OVER (ORDER BY SCORE DESC) AS [RANK],*
    FROM Scores;

    4、NTILE()函数是将有序分区中的行分发到指定数目的组中,各个组有编号,编号从1开始,就像我们说的'分区'一样 ,分为几个区,一个区会有多少个

    SELECT NTILE(1) OVER (ORDER BY SCORE DESC) AS [RANK],* FROM Scores;
    SELECT NTILE(2) OVER (ORDER BY SCORE DESC) AS [RANK],* FROM Scores;
    SELECT NTILE(3) OVER (ORDER BY SCORE DESC) AS [RANK],* FROM Scores;

  • 相关阅读:
    将博客搬至CSDN
    NOIP2018酱油记
    CF 1039D You Are Given a Tree && CF1059E Split the Tree 的贪心解法
    最大异或子序列问题
    UVa 10615
    UVa 1057
    用树状数组代替平衡树
    [CTSC2008]图腾totem
    POI2008 题解
    简便思路的题目别人的做法
  • 原文地址:https://www.cnblogs.com/lbliubinlb/p/12102271.html
Copyright © 2011-2022 走看看