leetcode sql

记录一些Leetcode上题目

Posted by gavin on January 24, 2022

随便整理的一些自用的sql指令

In oracle, 'rownum' must include data above, for e.g. rownum<=5

找中位数569

select Id,Company,Salary from 
(
select Id,Company,Salary,
row_number() over(partition by Company order by Salary) as rnk,
count(Salary) over(partition by Company) as cnt from Employee 
) t 
where rnk in (cnt/2,cnt/2+1,cnt/2+0.5)

找连续区间1285

SELECT
    MIN(log_id) as START_ID,
    MAX(log_id) as END_ID
FROM
    (SELECT
        log_id, 
        log_id - row_number() OVER(ORDER BY log_id) as num
    FROM Logs) t
GROUP BY num

1795