其他分享
首页 > 其他分享> > 601. 体育馆的人流量

601. 体育馆的人流量

作者:互联网

编写一个 SQL 查询以找出每行的人数大于或等于 100 且 id 连续的三行或更多行记录。

返回按 visit_date 升序排列的结果表。

链接:https://leetcode-cn.com/problems/human-traffic-of-stadium

用lead lag大法可以选出!但是要注意选出的有三个部分,头,尾,中!头是指后两个都>=100,中是指前一个和后一个都>=100,尾是指前两个>=100

select id, visit_date, people
from (
	select *, lag(people, 1, 0) over() as `p1`, lag(people, 2, 0) over() as `p2`, lead(people, 1, 0) over() as `l1`, lead(people, 2, 0) over() as `l2`
	from stadium
) t1
where (p1 >= 100 and p2 >= 100 and people >= 100)
or (l1 >= 100 and l2 >= 100 and people >= 100)
or (l1 >= 100 and p1 >= 100 and people >= 100)

标签:人流量,601,lead,people,over,lag,l1,体育馆,100
来源: https://blog.csdn.net/weixin_41917143/article/details/114479611