Relational database systems provide efficient storage for large volumes of data.
This course highlights that these systems also provide a
versatile and expressive data processing language: SQL. There’s much more
to SQL than the plain
SELECT...FROM...WHERE... clause and we will see that a
surprisingly large number of algorithmic problems can be tackled using SQL.
Moving computation close to the data is key to unlock the true potential of
Selected course topics include
- import of CSV data,
- common table expressions (
- non-standard data types (arrays, maps, JSON),
- anonymous functions (lambdas),
- table functions,
- non-standard aggregate functions,
- window functions,
- recursive computation,
- off-beat SQL applications, useful SQL idioms, and fun SQL puzzles.
The course will only provide a brief introduction to the fundamental aspects of relational database systems. We expect you to have basic SQL skills (through prior attendance of DB1) or personal projects, for example) or be willing to acquire such skills.
Join us for a boatload of SQL fun! We will provide more course details once the semester approaches.
Organisation of Exercises and Discord
We will use our Discord server for the organisation of the lecture and exercise, i.e., for official notes, questions and discussions. Registration and regular attendance is not optional, but required for participation in the course.