Thread Reader

Prashant

@capeandcode

Sep 22

23 tweets
Twitter

"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...

1. Theory • DDL • DML • DCL • TCL • Databases • Schemas • Relationships

2. Basics • Creating Databases • Creating Tables • Data Types • Data Insertion • Data Updation • Data Deletion

3. Keys & Constraints • Primary Key • Candidate Key • Super Key • Foreign Key • Default • Unique • Not null

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 youtube.com/watch?v=HXV3ze…

2. Coding with Mosh youtube.com/watch?v=7S_tz1…

• 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 ↓

1. Learning SQL by O'Reilly. amazon.in/Learning-SQL-G…

Learning SQL: Generate, Manipulate, and Retrieve Data, Third Edition (Greyscale Indian Edition)

amazon.in/Learning-SQL-G…

Learning SQL: Generate, Manipulate, and Retrieve Data, Third Edition (Greyscale Indian Edition)

2. SQL for Data Scientists by @Data Science Renee amazon.in/SQL-Data-Scien…

3. Sam's Teach Yourself amazon.in/Sams-Teach-You…

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.

I keep sharing such content so keep updated with my Twitter or subscribe to the weekly newsletter ↓ Thanks for reading! Consider following @Prashant. getrevue.co/profile/rectif…

Prashant

@capeandcode

Senior Engineer @Nagarro • Machine Learning • Video Creator @circlesapp_

Follow on Twitter