1. SQL

Learning Path for SQL Programming Language

SQL is quite vast and it typically depends upon which job your are applying for. Anyway here is the list of resources which I’ve used for learning SQL.

• Beginning

– Go through SQL tutorials on w3School, https://www.w3schools.com/sql/

– Read some parts of SQL reference manual – https://dev.mysql.com/doc/refman/8.0/en/ , Specifically I would advice you to read Language Structure, Data Types, Functions and Operators, SQL statements only. Also just skim through, at this level spending time on focusing deeper understanding is not worth it.

– Watch some video tutorial on SQL, my best recommendations are SQL – Introduction to Computer Science(CS 50) Harvard University , SQL Tutorial – Full Database Course for Beginners from FreeCodeCamp. Both are available freely on Youtube.

– Reading some books on SQL alongside, honestly I started my SQL journey by reading these two books – Learning SQL: Generate, Manipulate, and Retrieve Data by Alan BeaulieuSQL Primer: An Accelerated Introduction to SQL Basics by Rahul Batra.

• Taking a leap after Beginning

Unless you have not followed Beginning part first do not move onto this.

– Read all of SQL reference manual – https://dev.mysql.com/doc/refman/8.0/en/. Deep dive into concepts like Language Structure, Optimisation, Indexes, MySQl Shell, Partitioning etc. If you find anything confusing while doing this just Google it out or post on reddit.

– Watch video tutorials from Carnegie Mellon’s Database Group. Here is link for playlist of lectures/tutorials either from professors/lecturers from Carnegie Mellon University -> Playlist of SQL lectures. Specifically check out Advanced SQL course video from this playlist. Moreover as these tutors are done in academic settings so that’s why it’s quite easier to learn from these.

– Spend some time may be an hour weekly to read articles about SQL on Medium -> https://medium.com/tag/sql . In my journey these articles, mostly written by experts from industry/academics have helped a lot in my learning journey.

– Read some books on concepts like Query Optimisation, Implementing a database, Designing Database. My pick ups would be to first read –

SQL Practice Problems: 57 beginning, intermediate, and advanced challenges for you to solve using a “learn-by-doing” approach by Sylvia Moestl Vasilikthis would help you develop Problem Solving Skills in SQL

Database Design and Relational Theory: Normal Forms and All That Jazz by C.J.Date, this book is quite an interesting read for me as it helps to understand ‘How to Design Database’, which is quite important skill to have for working in SQL/Database related jobs.

High Performance MySQL: Optimization, Backups, and Replication, I’ve a quite interesting story related to this as this book was recommended to me by one of my friend whose only work at his job is to Optimise the SQL code written by junior SQL developers. So going through this book would not only help to better understand SQL rather it will help to develop SQL skills up to standard which industry is looking for.

I believe that this much knowledge would be enough for understanding SQL, putting that as a Skill on resume. Or rather if you get asked something about SQL in job interview you would be able to answer that.