Towards an Integration of Aggregate Functions Into a Logic-Oriented Database Query Language
Aggregate functions of many kinds have proved to be highly desirable to be part of any query language of the relational database model. Unfortunately both classical query languages, the relational algebra as well as the relational calculus, do not provide any means for implementing them. Some efforts have been undertaken to nevertheless extend these languages, but the results look artificial since aggregate functions contradict the nature of algebra and calculus. Thus commercial relational query languages such as SQL or QUEL, that necessarily provide aggregate functions, do not directly base on either of them. These languages on the other band suffer from drawbacks such as a lack of orthogonality or a missing clean semantics. In recent years a new, logic-oriented query language, DATALOG, was developed that extends the expressive power of relational algebra, but in the same way does not provide aggregate functions so that it leaves an essential requirement for a 'full' query language open. In this paper we extend this language so that aggregations may be formulated. At the same time this language overcomes the most important problems with commercial languages in that it is made up completely othogonally and it gains from clean semantics of predicate logic.
Nutzung und Vervielfältigung:
Alle Rechte vorbehalten