Databricks SQL join 3 tables


       Databricks SQL join 3 tables

Absolutely! Joining three tables in Databricks SQL is a common task when working with relational data. Here’s a breakdown of how to do it, along with considerations for optimization:

Basic Syntax

FROM table1
JOIN table2 ON table1.key = table2.key
JOIN table3 ON table2.key = table3.key;
  • Replace table1, table2, table3 with your actual table names.
  • Replace key with the column names you use to establish the relationships between the tables.

Types of Joins

You can use different types of joins to control which rows are included in the result:

  • INNER JOIN: Returns only rows where there’s a match in all three tables.
  • LEFT JOIN: Returns all rows from the left table, and matching rows from the other two tables.
  • RIGHT JOIN: Returns all rows from the right table, and matching rows from the other two tables.
  • FULL JOIN: Returns all rows when there’s a match in any of the three tables.


Let’s say you have three tables:

  • orders: order_id, customer_id, order_date
  • customers: customer_id, customer_name
  • products: product_id, product_name, price

You have another table that connects orders and products:

  • order_items: order_id, product_id, quantity

Here’s how you could join them to get a comprehensive view of orders, including customer and product details:

SELECT orders.order_id, customers.customer_name, products.product_name, order_items.quantity
FROM orders
JOIN customers ON orders.customer_id = customers.customer_id
JOIN order_items ON orders.order_id = order_items.order_id
JOIN products ON order_items.product_id = products.product_id; 

Optimization Tips

  • Join Order: Start by joining the tables with the fewest rows. This can significantly reduce the amount of data processed in intermediate steps.
  • Indexes: Ensure you have indexes on the columns you use for joining. This can dramatically speed up the join operations. You can use the ANALYZE TABLE table_name COMPUTE STATISTICS command to update the query planner’s statistics.
  • Materialized Views: For complex joins that are frequently used, consider creating materialized views. These pre-compute the results of the join, making subsequent queries much faster.

Databricks Training Demo Day 1 Video:

You can find more information about Databricks Training in this Dtabricks Docs Link



Unogeeks is the No.1 IT Training Institute for Databricks Training. Anyone Disagree? Please drop in a comment

You can check out our other latest blogs on Databricks Training here – Databricks Blogs

Please check out our Best In Class Databricks Training Details here – Databricks Training

 Follow & Connect with us:


For Training inquiries:

Call/Whatsapp: +91 73960 33555

Mail us at:

Our Website ➜

Follow us:





Leave a Reply

Your email address will not be published. Required fields are marked *