방문자수가 100이 넘는, id가 연속으로 3 이상인 경우만 나타내보려고 한다.
lead와 leg를 사용하여 케이스를 만든다.
select id, visit_date, people
from (select id, visit_date, people,
lead(people, 1) over (order by id) as after1,
lead(people, 2) over (order by id) as after2,
lag(people, 1) over (order by id) as pre1,
lag(people, 2) over (order by id) as pre2
from stadium) as A
where A.people>99 and ((A.after1>99 and A.after2>99)
or (A.pre1 > 99 and A.pre2> 99)
or (A.pre1> 99 and A.after1 > 99) );
'learning > SQL' 카테고리의 다른 글
[LeetCode 196] Delete Duplicate Emails (0) | 2023.01.28 |
---|---|
[LeetCode 627] Swap Salary (0) | 2023.01.28 |
[LeetCode 1873] Calculate Special Bonus (0) | 2023.01.28 |
[LeetCode262] Trips and Users (0) | 2023.01.21 |
[LeetCode185] Department Top Three Salaries (0) | 2023.01.21 |
댓글