SQL Roadmap
Data Science
Web/Mobile ⭣ Fullstack
⬊ ⭣ ⬋
⇨ Oracle ⇦
⇨ MySQL ⇦
⇨ SQL Server ⇦
⇨ PostgreSQL ⇦
⇨ MariaDB ⇦
⇩
Beginner
⭣ Learn fundamentals ➊
⭣ Choose a DB vendor ➋
⭣ Install ➌
⭣ Working with table ➍
⭣ Working with data ➎
⭣ Querying the data ➏
⭣ Operators ➐
⭣ Functions ➑
⭣ Database objects ➒
⭣ Programming in SQL ➓
⭣ Users and Roles ➊➊
⭣ Advanced Concepts ➊➋
Pro
➊ Learn fundamentals
➀ What is a database?
➁ What is DBMS?
➂ What is a relational database?
➃ What are the different vendors for RDBMS?
➄ What is normalization?
➅ Different normalization forms (NFs).
➆ What is SQL?
➇ Different components of SQL.
➈ What is ERD?
➋ Choose a database vendor
As a beginner, you will choose a vendor based on
➤ easy to begin with
➤ free of cost or very minimal cost
➤ simple installation (local machine or DBaaS)
➤ documentation, community, etc.
Freely available,
➤ MySQL Community Edition
➤ PostgreSQL
➤ MariaDB
➤ SQLite
✧ Oracle and SQL Server are proprietary ones.
➌ Install
While learning SQL, you'll need 2 components.
➤ A database server
where all your data will be stored.
➤ A database client
which will access that data.
➌.➀ Database Server
There are 3 options
➤ install on a local machine
free of cost
➤ install in some cloud instance
free for some limit
➤ provision a DBaaS instance
free for some limit
quickly available
➌.➁ Database Client
➤ Command Shell
runs from a terminal
mostly provided by vendors
➤ GUI-based IDE
❯ Vendor specific
Oracle SQL Developer
MySQL Workbench
❯ Generally available
DBeaver, SQuirrel, RazorSQL
.
➤ Online Editors
mostly available for DBaaS instances
➤ Database Drivers
required for connecting from applications
✧ Install/deploy/provision these components appropriately.
✧ These are going to be very important in your SQL learning journey.
➍ Working with database/table
❯ Create a database
❯ Create a table
❯ Alter a table
❯ Add a column
❯ Remove a column
❯ Modify a column
❯ Rename a table
❯ Drop a table
.
❯ Various Datatypes
❯ Constraints
❯ Primary Key
❯ Foreign Key
❯ NOT NULL data
❯ UNIQUE data
➎ Working with data
❯ Insert records
❯ Modify a record
❯ Merge data
❯ Delete a record
❯ Truncate a table
➏ Querying the data
❯ SELECT
❯ WHERE clause
❯ Projection
❯ Aggregation
❯ Join
❯ Union, Intersection
❯ Subquerying
❯ Sorting
➊➊ Users and Roles
❯ Create user
❯ Create role
❯ Grant access to a user
❯ Grant access to a role
❯ Revoke access from a user
❯ Revoke access from a role
❯ Drop a role
❯ Drop a user
➊➋ Advanced Concepts
❯ Binding variables
❯ Temporary tables
❯ Common Table Expressions (CTE)
❯ Regular Expressions
❯ Pivot data
❯ Import data
❯ External tables
Where to practice?
While learning, you should practice as well.
➤ Hackerank
➤ SQLZOO
➤ Schemaverse
➤ SQLPad
I am also sharing practice questions on SQL.
➤ Question Series #➀
twitter.com/swapnakpanda/s…
➤ Question Series #➁
twitter.com/swapnakpanda/s…
75+ SQL Practice Questions
❍ Oracle
❍ MySQL
❍ SQL Server
❍ PostgreSQL
❍ SQLite
⇩
Generally Asked Questions
➀ Why do you need to learn SQL?
Despite the growing popularity of NoSQL and Blockchain databases, SQL is still leading.
➤ easy to learn and use
➤ used outside of RDBMS also
➤ can handle most use cases
➤ plenty of career options
➁ What career options are available in SQL?
If you know SQL, you are a great fit to be
➤ Database Developer
➤ DBA
➤ Back-end App Developer
➤ Full Stack Developer
➤ Data Scientist
➤ Data Analyst
SQL is also used in journalism, entertainment, tourism, etc.
Final Words
⬘ SQL is very common and much needed if you are somehow related to working with data.
⬙ These days, many NoSQL databases are also providing SQL support to fetch data. Learning SQL will be a boon.
Good luck.
Hey
I am a Tech Writer, Educator, and Mentor from India , here sharing
✰ Tutorials
✰ Tricks
✰ Career Tips
✰ Cheat Sheets
✰ Practice Questions
✰ Roadmaps
on
➠ Web Development
➠ Data Structures and Algorithms
➠ Databases
Thanks for reading.