DM达梦数据库分析函数整理

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快!
💝💝💝如有需要请大家订阅我的专栏【数据库系列】哟!我会定期更新相关系列的文章
💝💝💝关注!关注!!请关注!!!请大家关注下博主,您的支持是我不断创作的最大动力!!!

引言

在复杂的数据分析场景中,达梦数据库的分析函数扮演着至关重要的角色。它们允许用户在单个查询中对数据进行分组、排序、排名及聚合计算,极大地提升了数据分析的灵活性和效率。本篇将深入探讨达梦数据库中几种关键的分析函数,并通过具体案例SQL来解析其用法,帮助你更好地掌握这些强大的工具。

一、窗口函数基础

窗口函数(Window Function)在处理数据时,为每一行数据定义了一个“窗口”(一组行),在该窗口内进行计算。这使得我们能够在保留表的原始行结构的同时,进行分组统计或排序比较。

1. RANK()DENSE_RANK()

案例:员工销售排名

假设有一个sales_data表,记录了员工的销售业绩。

SELECT 
    employee_id, 
    sale_amount,
    RANK() OVER (ORDER BY sale_amount DESC) AS rank,
    DENSE_RANK() OVER (ORDER BY sale_amount DESC) AS dense_rank
FROM sales_data;
  • RANK()会为销售金额降序排列的每个员工分配一个唯一的排名,相同销售额的员工会有相同的排名,但会导致后续排名跳过(如两个第一,则无第二,直接到第三)。
  • DENSE_RANK()则不会跳过排名,即使有相同的销售额,也会紧接上一个排名给出下一个连续的排名。

二、分组累加与平均值

2. SUM() OVER ()AVG() OVER ()

案例:计算累计销售额与平均销售额
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟小码

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值