zoukankan      html  css  js  c++  java
  • 【SQL】开窗函数简介

    【参考链接】:https://b23.tv/Ktb0oL

    1.为什么用开窗函数(什么情况用)

    • eg:假设一个部门有很多人,又有很多部门,想求每个部门的平均工资
      • 一般情况下,group by部门,只会得到部门名和最后的平均工资
      • 利用开窗函数,还可以另外显示每个部门的人员信息

    2.基本语法

    # function:聚合函数
    # expression:你想要的列(工资)
    function (expression)
    OVER (PARTITION BY column
          ORDER BY column ASC/DESC
          ROWS [···])
    • OVER():必须有,其余的不是必须的
    • eg:计算累计工资
      • 姓名(name)、部门(department)、小组(group)、工资(salary)、入职日期(join_date)
      • PARTITION(分割) BY
        • 每个部门的 - PARTITION BY department
        • 每个部门及小组的 - PARTITION BY department,group
    • ROWS
      • 默认:ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
        • (unbounded preceding and current row 所有前面的行和现在的行)
      • ROWS BETWEEN (x 是一个数值) …… AND ……
        • UNBOUNDED PRECEDING(前面所有行)
        • x PRECEDING (前x行)
        • x FOLLOWING (后x行)
        • CURRENT ROW (当前行)
    • function (expression)
      • avg(column)
      • count(*) / count(column)
      • dense_rank( )
      • lag(column [, offset ]) / lead(……)
      • max(column) , min(column), median(column)
  • 相关阅读:
    (5)html表单
    (4)html表格
    (3)HTML ”列表“、图片和超链接
    (1)html开头解说与案例演示
    学习web前端前感
    一、资源合并与压缩
    HTTP协议原理
    图解HTTP总结
    基于TypeScript从零重构axios
    元組
  • 原文地址:https://www.cnblogs.com/tuzinn/p/13971464.html
Copyright © 2011-2022 走看看