Book Image

SQL for Data Analytics

By : Upom Malik, Matt Goldwasser, Benjamin Johnston
3 (1)
Book Image

SQL for Data Analytics

3 (1)
By: Upom Malik, Matt Goldwasser, Benjamin Johnston

Overview of this book

Understanding and finding patterns in data has become one of the most important ways to improve business decisions. If you know the basics of SQL, but don't know how to use it to gain the most effective business insights from data, this book is for you. SQL for Data Analytics helps you build the skills to move beyond basic SQL and instead learn to spot patterns and explain the logic hidden in data. You'll discover how to explore and understand data by identifying trends and unlocking deeper insights. You'll also gain experience working with different types of data in SQL, including time-series, geospatial, and text data. Finally, you'll learn how to increase your productivity with the help of profiling and automation. By the end of this book, you'll be able to use SQL in everyday business scenarios efficiently and look at data with the critical eye of an analytics professional. Please note: if you are having difficulty loading the sample datasets, there are new instructions uploaded to the GitHub repository. The link to the GitHub repository can be found in the book's preface.
Table of Contents (11 chapters)
9
9. Using SQL to Uncover the Truth – a Case Study

8. Performant SQL

Activity 10: Query Planning

Solution:

  1. Open PostgreSQL and connect to the sqlda database:
    C:\> psql sqlda
  2. Use the EXPLAIN command to return the query plan for selecting all available records within the customers table:
    sqlda=# EXPLAIN SELECT * FROM customers;

    This query will produce the following output from the planner:

    Figure 8.75: Plan for all records within the customers table

    The setup cost is 0, the total query cost is 1536, the number of rows is 50000, and the width of each row is 140. The cost is actually in cost units, the number of rows is in rows, and the width is in bytes.

  3. Repeat the query from step 2 of this activity, this time limiting the number of returned records to 15:
    sqlda=# EXPLAIN SELECT * FROM customers LIMIT 15;

    This query will produce the following output from the planner:

    Figure 8.76: Plan for all records within the customers table with the limit as 15

    Two steps are involved in the query, and the limiting step costs 0.46 units...