
Chapter 1
Declarative Query Processing
in Relational Database Systems
A common approach to classify programming languages is around paradigms,
broadly defined as fundamental styles of computer programming. A tradi-
tional classification distinguishes between imperative languages (in which we
specify how to obtain results) and declarative languages (in which we specify
what we want without detailing how to reach the answer).
∗
In this chapter
we contrast these two approaches and motivate the declarative capabilities
of Structured Query Language (SQL), the most prevalent query language in
relational database systems. We then briefly review how SQL queries are ...