你还在简历中写熟练Sql吗

         将近两个月没有写文章了,真的堕落,平时每天在单位天天写Sql,总感觉自己的Sql还可以,相信大部分都有这个感觉,每天都在写,别人一问Sql怎么样,还可以,一到真格时,GG了,度娘救救我。

         曾经,一个Sql研究半天,嘿,终于搞懂了,一星期过后,又有新的业务需求,但Sql逻辑基本一致,哎,我上周怎么写的了,翻出以前写的,呵呵呵,这是个嘛呀。。。。

        现在很多数据分析岗位都需要面试Sql、Hql、Spark Sql,百分之90都需要现场手写,你说你现场百度,还得偷偷摸摸的,同时几个人面试呢,还写不出来,傻眼了。当然,即使当时写不出来也不要空着,思路写上亦可。就像初中平时测验似的,写个思路或者公式还给点分呢。

        今天突然这么一个题,求解每个月销售前三名的销售人员,基本上大部分人都练过求解每个学科前三名这道题。这不是换汤不换药吗。

        现有学生成绩表如下图所示:(操作环境Sqlserver2014)

                                                           你还在简历中写熟练Sql吗_第1张图片

 首先,查询按学科的排名

SELECT  name,
    subject,
    score,
    --对学科进行分区,成绩进行降序排列
    ROW_NUMBER() OVER(PARTITION BY subject ORDER BY score DESC) AS SCORE_RANK
FROM #SCORE

 结果如下图所示:

                                              你还在简历中写熟练Sql吗_第2张图片

查询上面结果的  SCORE_RANK小于4即可


SELECT * 
FROM (
    SELECT  name,
        subject,
        score,
        --对学科进行分区,成绩进行降序排列
        ROW_NUMBER() OVER(PARTITION BY subject ORDER BY score DESC) AS SCORE_RANK
    FROM #SCORE
    ) AS A
WHERE SCORE_RANK<4

以后在遇到类似情况,可以举一反三,帅的人已经点了关注,就差你了!

你还在简历中写熟练Sql吗_第3张图片

你可能感兴趣的:(Sql)