SQL/ADQL Beginner Resources

Delegates are invited to share their favorite SQL/ADQL resources in this topic thread. A few delegates requested information on SQL/ADQL programming tutorials during the DP0 survey. Because ADQL is closely based on SQL, you can learn many of the important concepts from SQL references. The RSP technically only accepts ADQL commands but is sometimes referred to as SQL because they are so closely related. The CET evaluated a few websites to recommend but would love to hear from the community about their favorite resources that they have found useful in learning SQL/ADQL.

Structured Query Language (SQL): a programming language used for relational database management systems, including functionality to query and subset data. The Wikipedia page for SQL Syntax provides a good reference for the basic commands, as is this Introduction to SQL by Phil Spector (slide deck).

Astronomical Data Query Language (ADQL): A programming language based on SQL, enriched with geometrical functions (e.g., CONTAINS, INTERSECTS), which was developed by the VO Query Language Working Group of the International Virtual Observatory Alliance (IVOA) to query astronomical databases. The full IVOA ADQL Version 2 document is the definitive reference issued by the developers of ADQL.

It can also be helpful to learn by example. Here are some tutorials for querying commonly-used astronomical databases:

The DP0.1 documentation includes a few basic ADQL tutorials for the DP0 data set:

Also, DP0.1 tutorial notebooks (GitHub - rubin-dp0/tutorial-notebooks: Tutorial Jupyter Notebooks for Data Preview 0, created and maintained by the Rubin Observatory Community Engagement Team.) contain ADQL code within some of the cells. Delegates are free to copy and paste the information from the tutorial notebooks into their own notebooks to help them perform their DP0 tasks.

Do you have a favorite SQL/ADQL tutorial or website to recommend??