SQL stands for Structured Query Language, and is a programming language used to manage and manipulate data in relational database management systems, RDBMS.
Some of the features of SQL:
- Execute queries against a database
- Read data from a database
- Insert records into a database
- Update records within a database
- Delete records from a database
- Create new databases
- Create new tables within a database
- Create stored procedures within a database
- Create views within a database
- Set permissions on tables, procedures and views
SQL Resources on the World Wide Web
SQL resources and learning platforms are all over the Internet, which is awesome, though it can be confusing AF as to how one should optimally focus on their time.
Where to start?!
What’s the difference between using this platform and that platform to learn this stuff?
Should I watch YouTube videos, take a course, or read a book?
Perhaps all of the above?!
I’ve decided to do a bit of all the things, and will adjust as I learn what works best for me. The idea is that one source might cover valuable information that wasn’t covered by another, and vise versa, allowing me to fill in the cracks and have a comprehensive understanding of what I’m learning. Each platform seems to have their pros and cons, and SQL isn’t the only thing on my To Do List, or shall I say SQL list? jkjk. I don’t know if that’s funny, but I’m fond of lists in general, and now it seems like I’m about to stroke this love of lists with SQL.
Below is a list of online learning platforms, including some I’ve been using to learn SQL:
- Code Academy
- w3 schools
- Data Camp
- Khan Academy
- Hacker Rank
- Harvard Online
- Stanford Online
- Leet Code
- Learning SQL Online
While practicing how to write queries within these online code learning platforms is useful, as they don’t require any complicated downloads and licenses, you should download a version of SQL that you can run on your own computer and interact with in order to optimize your learning, by playing with the real thing. Make sure your computer meets the minimum requirements.
- MySQL – a SQL database that you can download and interact with on your own computer
- POPSQL – a code editor to connect with and interact with MySQL
- PostgreSQL – another open source object-relational database system
- SQLite – “a tiny “a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bundled inside countless other applications that people use every day.”
While SQL has a number of important commands that are the same across each database “option”flavour,” like MySQL, PostgreSQL and Microsoft SQL Server and so on, there are some differences in how these programs interact and work, which one (including myself) will understand over time while interacting with whatever they’re working with. I’m starting out with POPSQL as a SQL DB editor, although one can engage with and manipulate the data straight from a terminal as well.
SQL Tutorial Videos on YouTube
The following videos are useful tutorials that range from an hour to many hours, depending on the depth of coverage. I’ve watched some and plan to watch others, which may be redundant. If it seems too redundant and a waste of time, as time is of the essence, then I may skip around, while also listening to awesome music, because as you may or may not know, music is key.
With that said, find me on Spotify if you want to hear some dope beats!
This is a Living SQL Post
A living SQL post in the sense that I’ll update it over time to reflect what I’m learning and new insights as a way to learn by teaching, not that I’m teaching anyone. It’s a form of note taking.