group by是分组函数、partition by是分区函数、sum()等是聚合函数


1、over函数的写法:

over(partition by cno order by degree )

先对cno 中相同的进行分区,在cno中相同的情况下对degree进行排序


2、分区函数Partition Byrank()的用法“对比”分区函数Partition Byrow_number()的用法

例:查询每名课程的第一名的成绩

(1)使用rank()

(2)使用row_number()

(3)rank()row_number()的区别

以上的例子得出,在求第一名成绩的时候,不能用row_number(),因为如果同班有两个并列第一,row_number()只返回一个结果。


3、分区函数Partition Byrank()的用法“对比”分区函数Partition Bydense_rank()的用法

例:查询课程号为‘3-245’的成绩与排名

(1)使用rank()

(2)使用dense_rank()

(3)rank()dense_rank()的区别

以上的例子得出,rank()dense_rank()都可以将并列第一名的都查找出来,但rank()是跳跃排序,有两个第一名时接下来是第三名。而dense_rank()是非跳跃排序,有两个第一名时接下来是第二名。


记录学习 - 分区函数Partition By的使用相关推荐

  1. 分区函数Partition By的与row_number()的用法以及与排序rank()的用法详解(获取分组(分区)中前几条记录)...

    partition by关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录,partition by用于给结果集分组,如果没有指 ...

  2. 分区函数Partition By的用法

    group by是分组函数,partition by是分区函数(像sum()等是聚合函数),注意区分. 1.over函数的写法: over(partition by cno order by degr ...

  3. sqlserver中分区函数 partition by的用法

    partition  by关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录,partition  by用于给结果集分组,如果没 ...

  4. MySQL学习记录 (五) ----- 存储函数、存储过程和触发器

    相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...

  5. KingabseES执行计划-分区剪枝(partition pruning)

    概述 分区修剪(Partition Pruning)是分区表性能的查询优化技术 .在分区修剪中,优化器分析SQL语句中的FROM和WHERE子句,以在构建分区访问列表时消除不需要的分区.此功能使数据库 ...

  6. 自定义实现spark的分区函数

    有时自己的业务需要自己实现spark的分区函数 以下代码是实现一个自定义spark分区的demo 实现的功能是根据key值的最后一位数字,写到不同的文件 例如: 10写入到part-00000 11写 ...

  7. C语言分区排序partition sort 算法(附完整源码)

    分区排序partition sort 算法 分区排序partition sort 算法的完整源码(定义,实现,main函数测试) 分区排序partition sort 算法的完整源码(定义,实现,ma ...

  8. 快速排序(划分函数partition和主元pivot选取)

    快排是一种基于分治思想的排序算法,在如此众多的排序算法中,其综合排序速度最佳(大多情况为O(nlog2n)),这也是快排之所以叫快排的一个原因之一.先来看一下快排的基本轮廓. //快排函数static ...

  9. Python初级学习教程—从入门开始学习(函数、组合数据类型、文件操作、异常、模块)

    文章目录 入门 一.数据的相关操作 二.continue 和 break的区别(易混点) 三.函数 变量的作用域 三.函数进阶 1.函数多个返回值 2.函数参数种类 3.匿名函数 组合数据类型 一.列 ...

最新文章

  1. 【linux】ubuntu14.04升级dbus到1.13.8,杯具了,无法进入桌面
  2. STM32-超级终端显示日历
  3. 12.super关键字
  4. 八十四、Python | Leetcode回溯算法系列
  5. Linux中的Total Video Converter——超级音视频转换软件:Winff
  6. 【HTTP】 认证和单点登录 【瞎写的…】
  7. private函数php,php怎么修改private
  8. MySQL基础总结,认真看完这篇就够了!!!
  9. 记-ItextPDF+freemaker 生成PDF文件---导致服务宕机
  10. 什么是复制和交换习语?
  11. 百度seo排名规则_SEO界的潜规则(百度死不承认的SEO秘密)
  12. 设置新版谷歌浏览器自动启用flash
  13. MATLAB寻找数据最大值
  14. 通过斐波那契数列探讨时间复杂度和空间复杂度
  15. 【无人机】无刷电调学习之路
  16. 四平博达学院计算机社团,民盟四平市委博达学院支部举行换届会议
  17. vs2013调试技巧及快捷键
  18. Java初学 通过接口实现猫狗跳高
  19. Entry是什么类型?
  20. Linux中查看二进制文件

热门文章

  1. 光量子领域新突破:有望打造芯片工厂!
  2. ES5和ES6的继承有哪些优劣?
  3. STM32F103移植uCOS-III
  4. IO流-节点流和处理流(涵盖底层调用关系)
  5. 网络工程师常用的命令整理-windows版,还不快收藏起来
  6. clip-path的学习和简单使用
  7. 【DB笔试面试733】在Oracle中,RAC中REMOTE_LISTENER的作用是什么?
  8. 赚享客系统模式app技术开发
  9. 电脑画流程图用什么软件好?这3款软件很好用
  10. 从实现原理谈谈低代码