mysql高阶-窗口函数-分析函数

1 lead(x,y,z) 函数:领先,找行号更大的数据 返回当前行后面的值

LEAD(x,y,z) 函数:   领先,找行号更大的数据   返回当前行后面的值
										x: 列名  y:偏移量(如果y =2,则说明要以当前行为基准,向后移动两行为返回值)
										z: 默认值时null ,如果传入z ,则默认值是z
LEAD(x) over()    1 最后一列没有下一列结果显示null
									2 lead(x) x的值 与排序的列可以不同


栗子:
统计id 为1的网站,每天访问的人数以及下一天访问的人数- 返回字段:`day`日期,`users`访问人数,`lead` 下
一天访问人数
 							
SELECT
		day,
		users,
		LEAD(users) over(order by day) as `下一天访问日期人数`
FROM
statistics
WHERE website_id = 1;
实际用途!!!!!!!!!!!!!!!! 
从业务逻辑来看 这可以很容易的告诉我们有关网站的很多信息
① 正数: 上升期
②负数: 找到下滑原因

使用LEAD()函数计算增量
SELECT 
		day,
		clicks,
		LEAD(clicks) over(order by day) as `下一天的点击量`,
		clicks - LEAD(clicks) over(order by day)  as `点击差值`	
from 
statistics
WHERE website_id =2;


需求:统计id为1的网站,每日收入,后一天收入,以及每日收入的环比。
SELECT
		revenue,
		LEAD(revenue) over(ORDER BY day) as `下一天收入`,
		LEAD(revenue) over(ORDER BY day) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值