The Querynomicon
An Introduction to SQL for the Cautious and Weary
Setup
- Download the databases used in the examples
- Download DB Browser for SQLite
Lessons
- Introduction: where we're going and why
- Core Features: getting values from tables
- Tools: Miscellaneous things that make life easier
- Python: using databases from Python
- Advanced Features: when you need 'em, you need 'em
- R: using databases from R
- PostgreSQL: client-server computing and permissions
- Conclusion: where we've been and what comes next
Appendices
Acknowledgments
- Greg Wilson was the co-founder and first Executive Director of Software Carpentry and received ACM SIGSOFT's Influential Educator Award in 2020.
- Konstantinos Kitsios is a PhD student at University of Zurich, working on applications of machine learning to software engineering. Previously he worked as a software engineer at Tesla.
- Pao Corrales has a PhD in Atmospheric Sciences and works on improving severe weather forecasts in Argentina. She loves teaching science and programming using evidence-based techniques centered on the students and their context.
This tutorial would not have been possible without:
- Andi Albrecht's
sqlparsemodule - Dimitri Fontaine's The Art of PostgreSQL
- David Rozenshtein's The Essence of SQL (now sadly out of print)
We also thank the following people for spotting issues, making suggestions, or submitting changes:
- Yanina Bellini Saibene
- Phillip Cloud
- Zoe Daniels
- Conor Flynn
- Andy Goldberg
- Jay Graves
- Sam Hames
- Adam Hawkes
- Robert Kern
- Olivier Leroy
- Kevin Marshall
- Roy Pardee
- Manos Pitsidianakis
- Daniel Possenriede
- Adam Rosien
- Thomas Sandmann
- Simon Willison
start where you are · use what you have · help who you can