关注公众号,SQL干货及时获取
经常有小伙伴问我:岳哥,你之前是怎么学会SQL的?有没有什么快速入门的方法?
常常因为比较忙也不能系统的回答,今天把我曾经的一些学习经历和方法分享给大家,希望对大家有点帮助。
没错,我开始学SQL的时候,只有学校老师教的那点基础。很多表之间的关联,子查询,存储过程等等都只听说过,并没有什么实战经验。
也像大多数初学者一样,刚开始像无头苍蝇,不知道该如何下手。也是到处找各种学习资料,曾经下载过很多学习资料,包括各种数据库的视频教程,电子书,也买过一些纸质版的实体书。
这些资料确实帮了我不少,总的来说,电子书>实体书>视频教程。是的,反而是书籍让我学到了更多数据库的一些知识。
这其中一些我看过的电子书,比较好的我都会收藏起来。
当然这里并不是在推荐资料什么的,只是我也有一些收集好东西的习惯,毕竟这些书带给我很多帮助。如果你需要可以加我微信:liyue071714118,我分享给你。
但是看书也是有方法的,很多小伙伴虽然收集了不少资料,但是学习方法的效果没那么好,特别像我自己就吃过一些学习方法的亏。
刚开始学习,总以为把书看完了,知识就全进到我脑子里了,我就会用SQL了。但是当我看完一本两本,我发现我只是翻完了而已,知识并不会被完全吸收。后来我发现不能再这样大概读读了,要精读,要动手写代码,哪怕是对着书上的代码一个一个的敲。
这个方法行之有效,而且后来屡试不爽。按照这个方法先后读完了《Microsoft SQL Server 2008技术内幕 》的上下两卷,把SQL Server的一些运行原理和使用方法都仔仔细细的操作了一遍。
以前我只知道数据库的一些简单的使用方法,但是看过这些原理性的书之后,写的每一行代码我都知道它会如何进到数据库,如何被执行等等。
有些东西只有知道它是如何运行的。你才能更好的理解它,这是我看完这两本书的一个深刻体会。
有时候一个知识点一看就会,一写就废,造成这样的情况就是练的太少了。
刚工作那会儿,做的工作是一些数据统计的活,每天的统计需求各种各样的,这样间接的迫使我每天都要去写很多的SQL代码。
从开始数据聚合(包括汇总,计数,平均等等),到后来的累加,连续N天,循环等等。遇到的逻辑需求越来越复杂,但是总能用SQL代码求出来,这就得益于每天这样不停的写呀写。
哪怕是现在,每天还是会写各种各样的SQL逻辑。每当用SQL解决一个问题,就会很开心,这可能就是一种成就感吧。
所以除了读书,平时也要保证一种频繁写SQL的状态,让它成为你的一部分,如果能够做到这些,那离学会SQL也就不远了。
很多小伙伴一遇到问题就不知所措,希望能够找人直接帮忙解决了。找人帮忙解决固然是好,但是如果能够自己弄懂问题原因,然后自己动手解决那无疑是最好的。
数据库的安装对于初学者,是一个非常让人头疼的事。特别每次换一台电脑就要安装一次,那种安装不成功的痛苦我想只有经历过的小伙伴才能理解。
后来因为安装的太多次了,失败了太多次,摸索出了一些门道,才知道一个安装不过如此。
当你把所有的坑都踩一遍,你就会知道走哪条路才最安全。
同样的,我们在写SQL时也会遇到各种难题,就像上面提到的循环,不知道怎么写咋办?查资料模仿,没其他的好办法,别人能成功,为什么我不能成功?
很多小伙伴经常说自己会某个平台的SQL,比如SQL Server,但是不会其他平台的SQL。
其实SQL的基础语法都是相通的,不一样的是底层的数据流转原理和各个平台的一些特色内容。
比如SQL Server里面有个ceiling函数,如果是其他平台一开始肯定不知道有什么函数与之对应,那就直接搜索这个平台和ceiling,例如:Oracle ceiling,你就会找到Oracle中与之对应的是ceil函数,同样的MySQL则两个都可以使用。
其他一些比较高级的知识点,虽然写法上的区别比较大,但是他们的原理都大致类似,所以如果你真的会了SQL,就不要怕自己没用过的数据库平台。
今天就暂时分享这么多,如果对你有所帮助,记得帮忙转发+点赞,感谢
我是岳哥,最后给大家分享我写的SQL两件套:《SQL基础知识第二版》和《SQL高级知识第二版》的PDF电子版。里面有各个语法的解释、大量的实例讲解和批注等等,非常通俗易懂,方便大家跟着一起来实操。
有需要的读者可以下载学习,在下面的公众号「数据前线」(非本号)后台回复关键字:SQL,就行
文章有帮助的话,点个赞或在看吧。
谢谢支持