zoukankan      html  css  js  c++  java
  • sql over partition by

    over partition by与group by 的区别

    Over Partition by 与Group by 的区别

    例如:

    有三条数据

    Id 1

    Id 2

    Id 3

    group by 结果为6

    over partition 

    SUM (Id) OVER (PARTITION BY id ) Id 结果为 

    id sum(1) 也就是1

    id sum(1+2) 也就是3

    id sum(3+3) 也就是6

    MIN(id) over (partition by id desc) id 结果为

    id min(3) 结果为3

    id min(3,2) 结果为2

    id min(3,2,1) 结果为1

    MIN(id) over (partition by id asc) id 结果为

    id min(1) 结果为1

    id min(1,2) 结果为1

    id min(1,2,3) 结果为1

    Partition by主要是累计计算

    group by是分组函数,partition by是分析函数(然后像sum()等是聚合函数),

    执行顺序 from > where > group by > having > order by。

    而partition by应用在以上关键字之后,实际上就是在执行完select之后,在所得结果集之上进行partition。

    partition by相比较于group by,能够在保留全部数据的基础上,只对其中某些字段做分组排序,而group by则只保留参与分组的字段和聚合函数的结果

     
  • 相关阅读:
    浏览器渲染页面
    递归求1-100之和
    border属性
    ES6 Class
    数组去重
    get、post请求
    对象冒充继承
    原型链继承
    实现JS数据拷贝
    【转】centos升级curl版本
  • 原文地址:https://www.cnblogs.com/zwyAndDong/p/15246165.html
Copyright © 2011-2022 走看看