Explain Codes LogoExplain Codes Logo

Sql left join vs multiple tables on FROM line?

sql
join
sql-optimization
best-practices
Alex KataevbyAlex Kataev·Mar 7, 2025
TLDR

When you need every row from the primary table, leveraging the NULL magic for non-matching records, do a LEFT JOIN:

SELECT * FROM table1
LEFT JOIN table2 ON table1.id = table2.fk_id;
-- This is like inviting a friend to dinner and they can bring a plus one, but it's ok if they show up solo!

In case you plainly desire the records existing in both tables, consider a comma-separated FROM clause (implicit INNER JOIN):

SELECT * FROM table1, table2
WHERE table1.id = table2.fk_id;
-- We are picking from two ice-cream flavors here, but bear in mind! No tutti-frutti without both vanilla and strawberry.

TL;DR: Grab LEFT JOIN for full left table data, FROM with multiple tables for perfect pairwise matches.

Understanding JOIN for the win

Enhancing code readability

Given explicit JOIN conditions, complex SQL queries become a piece of cake. They allow you clear-cut mapping of table relationships, thus avoiding eyebrows-raisingly weird accidental cross joins and prematurely-grayed DBAs.

Future-proof code

Make your SQL career future-proof. The JOIN keyword is the industry-standard practice, following the ANSI SQL-92 recommendations. No more playing catch up with deprecated syntax.

Handling NULL with ease

In SQL, NULL can be a headache, but LEFT JOIN turns the tables. When you include all records from table1, LEFT JOIN pulls its NULL magic trick for non-matching records in table2, making you the SQL magician.

Managing ambiguity

Join tables like a pro with JOIN. When specifying your explicit join conditions, you ease future maintenance by eliminating any possible mix-ups.

Mastering Query Performance

Minimize performance fears

SQL optimizers are no more a thing of nightmares. With well-defined join conditions, you get a negligible difference in performance while achieving organised and readable JOIN operations.

Embrace your optimizer

Go for JOIN to let the query optimizer work its magic. This way, you're creating well-optimized SQL queries, ready for a successful database performance party.

Kick the old school syntax

Say a big NO to deprecated syntax such as a.x = b.x(+) or a.x *= b.x. Keep up with times and opt for the clearer, flexible JOIN syntax.

Merge with ANSI Standards

Harmonize your SQL style with the well-respected ANSI standard. The JOIN syntax offers you consistency and uniformity, so you blend in with other SQL maestros!