牛客SQL刷题总结

效率第一,头脑清晰,格式清楚,用法熟知,思路明白,考虑周全,理解题目意图,不惧困难,搭建模板等等

1.对于零基础同学,从头开始刷即可,不会的,赶紧去看讨论区,不要浪费时间

2.有些基础的,也建议从头刷,如果有思路且知道相应代码实现,可以直接复制粘贴讨论区答案,如果讨论区还有其他思路,那么也可以借鉴一下,或者直接下一题

3.最后,比较好的是,通过读完需求,理解需求后,能够想出题目中的困难点,以及大概用什么思路解决,通过什么样的方式解出来,然后有思路,且思路清楚,那么可以直接写出来,最后查漏补缺即可;;;中等的是能理解大概是啥,大概怎么写,那么我就先分出步骤来,一步一步的去求解,然后搭建模板with,最后合在一起就是答案了

思考:

92语法,99语法,其实现在都用的99语法,就是join (on/using), 外连接(左外,右外,left,right),内连接(等值连接)全连接(左外+右外),笛卡尔积,表连接顺序:第一步都是cross join ,第二步 内连接(筛选N件),第三步 外连接 处理没有适配的数据

SQL查询的思路,from-》join on-》where-》单行函数-》group by-》聚合函数(组函数,分组之后才能用的函数)-》having-》select-》order by-》limit

其他用法:if和case when then end 类似,日期,聚合函数,union(等于 union all +去重+排序)与union all(直接把两个表前后连在一起)。开窗函数,聚合,取值等等

1.做的多了,就会发现SQL其实也就那些个东西,难的题最差都能用join解出来,但对于大数据量不合适,所以推荐多用窗口函数,这个是真的灵活的实现,字段多的,你join出来,都不知道自己思路是啥了,会出现哪些字段,出现很懵逼的情况

2.做难的SQL其实跟算法一样,有的也需要分类讨论也需要union,需要扣细节,+1,-1之类的也非常多,对于题目的理解也重要,

3.总体做题思路是先读需求,再看表有哪些字段需要使用,表与表的关系,需不需要join等等,然后对于需求最好分步骤来求解(前期最好这样,后期练熟了会发现你能抽象出来每一步是啥,然后每一步写每一步的代码),一步一步的写就好,最后合在一起就ok了,这过程有点像ETL的过程,先抽取有用的数据,再转化,最后加载出来。

4.清楚的大脑很重要,请保证自己头脑清楚,否则不要做中等以上题目,或者必须分步骤来做,不然做了一会你会发现,这些代码是啥,我在干啥?这谁写的代码,容易造成思路混乱,非常容易遗漏细节

5.对于一些函数的使用,前期建议多百度,bing查找用法,或者讨论区也有

6.对于代码格式最好类似以下这样(最好有自己风格),简单的题可以不用遵守,越难的题,越遵守格式,越对自己的思路有帮助

全部评论
感谢分享,以后刷题还是要多总结
2 回复 分享
发布于 2023-02-19 18:24 四川
可能也不用刷很多哈哈,一般说说思路就行
1 回复 分享
发布于 2023-02-24 11:36 北京
大佬刷了多少了
1 回复 分享
发布于 2023-02-19 18:21 云南

相关推荐

迷茫的大四🐶:自信一点,我认为你可以拿到50k,低于50k完全配不上你的能力,兄弟,不要被他们骗了,你可以的
点赞 评论 收藏
分享
评论
24
79
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务