分享今天做的力扣SQL题

其实做之前就打算分享的,但是做完又不想分享了。。。结果没几分钟,还是,写一下吧。我就当各位是监督我的。

说一下,这是第一天做SQL题,虽然我也是软件工程专业,但是学的本来就不好,又忘了个差不多。SQL目前是只会and 和 join链接 。为了找实习,下决心刷题,一道道刷,easy和mid都做。

还有就是每天不超过4道吧,毕竟在精不在多。

176和177

第二,第N高的薪水。思路差不多。177多了一个函数,FUNCTION。这一题还学到了IFNULL这个语法

sql 复制代码
CREATE FUNCTION getNthHighestSalary(N INT)
RETURNS INT
DETERMINISTIC
READS SQL DATA
BEGIN
    # Write your MySQL query statement below.
    declare M int;
    set M = N-1;
    return IFNULL((
        select distinct salary
        from employee
        order by Salary desc
        limit M, 1
        ), null);
END;

select getNthHighestSalary(1);

178

分数排名,这个题解有说一个MySQL8.0不支持的函数,DENSE_RANK,非常巧合能用到这个题。不太通用就

sql 复制代码
select s1.score,(
    select count(distinct s2.score) from Scores s2
    where s2.score >= s1.score
    )as 'rank'
from Scores as s1
order by s1.score desc;

179

找出所有至少连续出现三次的数字。我一开始也没想到,居然能自连接三次,然后用id判断。感觉有点算法题的思路了,for遍历一样

sql 复制代码
select distinct l1.num as ConsecutiveNums
from Logs l1, Logs l2, Logs l3
where l1.id = l2.id-1 and l2.id = l3.id -1 and l1.num = l2.num and l2.num = l3.num
相关推荐
小新学习屋几秒前
《剑指offer》-数据结构篇-哈希表/数组/矩阵/字符串
数据结构·leetcode·哈希表
满分观察网友z2 分钟前
滑动窗口下的极限挑战:我在实时数据流中挖掘最大价值分(1695. 删除子数组的最大得分)
算法
山烛19 分钟前
KNN 算法中的各种距离:从原理到应用
人工智能·python·算法·机器学习·knn·k近邻算法·距离公式
guozhetao32 分钟前
【ST表、倍增】P7167 [eJOI 2020] Fountain (Day1)
java·c++·python·算法·leetcode·深度优先·图论
吃着火锅x唱着歌34 分钟前
LeetCode 611.有效三角形的个数
算法·leetcode·职场和发展
技术卷40 分钟前
详解力扣高频SQL50题之619. 只出现一次的最大数字【简单】
sql·leetcode·oracle
CHANG_THE_WORLD3 小时前
金字塔降低采样
算法·金字塔采样
不知天地为何吴女士5 小时前
Day32| 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
算法
小坏坏的大世界5 小时前
C++ STL常用容器总结(vector, deque, list, map, set)
c++·算法
励志要当大牛的小白菜8 小时前
ART配对软件使用
开发语言·c++·qt·算法