Some people find SQL to be a helpful model for data analysis. They can also find themselves frustrated because some things that seem clear in SQL can seem difficult to restate in Python.
We'll look at some of the SQL query design patterns in detail. With this, we can formulate Python functions that have the same behavior without the overheads of using an actual database. Even something like SQLite3 involves overheads that can be avoided.
To keep the talk short, we'll avoid a number of more nuanced SQL features. We'll cover the principle elements of a Select
statement including the Group by
and Having
clauses. This isn't a tutorial, and the audience needs to be comfortable with generator expressions and list comprehensions.
The concept is to use SQL concepts for initial design, but pivot to Python for a robust implementation.