O'Reilly logo

Getting Started with SQL by Thomas Nield

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 8. JOIN

Stitching Tables Together

Joining is the defining functionality of SQL and sets it apart from other data technologies. Be sure you are somewhat comfortable with the material we’ve covered so far, and take your time practicing and reviewing before moving on.

Let’s rewind back to the beginning of this book, when we were discussing relational databases. Remember how “normalized” databases often have tables with fields that point to other tables? For example, consider this CUSTOMER_ORDER table, which has a CUSTOMER_ID field (Figure 8-1).

The CUSTOMER_ORDER table has a CUSTOMER_ID field
Figure 8-1. The CUSTOMER_ORDER table has a CUSTOMER_ID field

This CUSTOMER_ID field gives us a key to look up in the table CUSTOMER. Knowing this, it should be no surprise that the CUSTOMER table also has a CUSTOMER_ID field (Figure 8-2).

The CUSTOMER table has a CUSTOMER_ID key field that can be used to get customer information
Figure 8-2. The CUSTOMER table has a CUSTOMER_ID key field that can be used to get customer information

We can retrieve customer information for an order from this table, very much like a VLOOKUP in Excel.

This is an example of a relationship between the CUSTOMER_ORDER table and the CUSTOMER table. We can say  that CUSTOMER is a parent to CUSTOMER_ORDER. Because CUSTOMER_ORDER depends on CUSTOMER for information, it is a child of CUSTOMER. Conversely, CUSTOMER cannot be a child of CUSTOMER_ORDER ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required