Learn SQL “The Hard Way”

A fogy day in the mountains
SQL enables you to find the best datapoints even in fogy days

A lot of emphasis is being placed to get more and more people to code. And, while a worthy enterprise, this guidance misses an important opportunity: gradual computer science involvement can boost retention and improve comprehension. Before learning C, our children should probably learn a bit of UNIX although some people might think I’m a little ambitious here.

But what about learning SQL. What about learning some structured query language right after Excel. Wouldn’t that be a tremendous asset for data analysis later in the life of college students. SQL is arguably one of the most powerful business tools anyone can learn. If you’re in web development and don’t know SQL, trust me, after you learn it your life will dramatically change for the better. If you’re convinced head to the free Learn SQL The Hard Way site and start coding right now. If you’re still not convinced, keep reading…

 

1. SQL was invented for everyone

It’s one of those languages built with the business user in mind. And, while it failed at getting everyone to use it, SQL remains as the most popular data extraction language. Anyone can learn this powerful language and create very powerful solutions with it.

 

2. It brings you closer to “full stack nirvana”

Full stack developers are the best. They have a 360-degrees view that is critical to build fast and refactor in a fraction of the time it takes regular developers. Specially in the very first stages of a startup, full stack people are crucial.

 

3. You can learn a decent amount of SQL in a week or two

So this line prints a list of people:

SELECT * FROM person;

And this one prints the ones not name Mary

SELECT * FROM person WHERE first_name != "Mary";

Was that easy or what? Sure, you can have queries that stretch for pages upon pages but, in other to become productive you truly don’t need that much. For example, here’s a slightly more complex query to extract parcels that haven’t been involved in fires from a second table named “fires”:

SELECT * FROM PARCELS
WHERE PARCELID NOT IN (SELECT PARCELID
FROM FIRES);

or, more efficiently:

 SELECT * FROM PARCELS P
    WHERE NOT EXISTS 
       (SELECT NULL
        FROM FIRES F
        WHERE P.PARCELID = F.PARCELID);

 

4. It’s free

In the 90s the talk of the day was the pontification of the Oracle DBA. We have finally found out that DBAs are human too and that MySQL can do a lot of the things Oracle is so good at.

 

5. It’s very well standardized

SQL-ANSI is the same regardless of the database server you use. And, if you stick to ANSI code, your program will run in virtually any database server. The portability of SQL code is truly amazing.

 

6. SQL will boost all of your previous abilities

It makes you better at Excel, better at coding, better at UNIX, better at thinking. It’s truly a wonderful language to master. It doesn’t matter if you want to be an executive for the rest of your life or write complex Lisp on a daily basis.

Do yourself a favor and learn some SQL, it’s a wonderful skill.

 

Further Reading

A Beginner’s Guide to SQL: A MySQL Tutorial. (Thanks to Molly Elizabeth from Udemy for this wonderful resource!)