"Learn SQL"
Great advice no doubt.
• But what topics to cover?
• Which SQL database to use?
• What resources to learn from?
Here's is a track you can follow ↓
1/22
Let's start with choosing the SQL database to learn.
• There are several of databases like Postgres, MS SQL server, MS Access, Oracle.
• But for learning purposes I'd suggest going with MySQL.
• For reasons that it is secure, free & open source and the support is great.
• Later on we can switch to other databases easily.
• Now what topic should we know in SQL? I knew the basics like select, where and joins but I couldn't get past them.
• So here are some topics and terms everyone should learn, starting with...
4. Basics of Select Statements
• Select
• Aliases
• Where
• And
• Or
• Like-Not Like
• Between-And
• Is null-Is Not Null
• Distinct
• Order By
• Limit
• Exists-Not Exists
• Subqueries
• If
• Case
5. Aggregations
• Group By
• Having
• Count
• Sum
• Min & Max
• Avg
• Round
• If null
• Coalesce
6. Joins
• Inner Join
• Left Join
• Right Join
• Cross Join
• Self Join
• Union
• Union All
7. Window Functions
• Row number
• Partition
• Rank & Dense Rank
• Lag & Lead
8. Other Topics
• Stored Procedures
• User-defined Function
• Triggers
• From my perspective all of these topics are a must to be able to do substantial work with relational databases.
• Now that we know the topics, where to learn them from?
• If you're just a beginner, then you can start with crash courses to get a gist.
Like these two ↓
1. SQL from Freecodecamp
2. Coding with Mosh
• For advanced topics you might have to either get paid courses.
• Or you can learn from websites like W3 schools which have good explanation for each topic.
w3schools.com/sql/default.asp
• There's another great alternative, which is... Books! There are some great books you can pick up for learning.
Like these three ↓
Once you have everything covered then you might want to get your hands dirty.
• One of the best ways is to download any open source database and try different concepts by yourself.
• Another good alternative is to visit Hackerrank and do their SQL track.
That's all for this one!
• SQL is a must-have skill these days and I hope everything above adds value to your learning.
• If you have other opinions or advice, do comment.