결과 table에 임의의 기준으로 row번호를 부여할 때 사용하는 방법 3가지
row_number
rank
dense_rank
예시
미국 야구 경기 중, Mariners 팀의 경기 시간( minute )으로 줄세워 본 결과
with
t1 as (
select
row_number() over( partition by homeTeamName order by duration_minutes desc ) seq,
homeTeamName home_team_name,
duration_minutes,
from
`bigquery-public-data.baseball.schedules` a
where 1=1
)
select
*
from
t1
where 1=1
and seq <= 5
and home_team_name = 'Mariners'
결과
with
t1 as (
select
rank() over( partition by homeTeamName order by duration_minutes desc ) seq,
homeTeamName home_team_name,
duration_minutes,
from
`bigquery-public-data.baseball.schedules` a
where 1=1
)
select
*
from
t1
where 1=1
and seq <= 5
and home_team_name = 'Mariners'
결과
with
t1 as (
select
dense_rank() over( partition by homeTeamName order by duration_minutes desc ) seq,
homeTeamName home_team_name,
duration_minutes,
from
`bigquery-public-data.baseball.schedules` a
where 1=1
)
select
*
from
t1
where 1=1
and seq <= 5
and home_team_name = 'Mariners'
결과