Query graphs, implementing trees, and freely-reorderable outerjoins
- 1 May 1990
- conference paper
- Published by Association for Computing Machinery (ACM)
- Vol. 19 (2) , 291-299
- https://doi.org/10.1145/93597.98738
Abstract
We determine when a join/outerjoin query can be expressed unambiguously as a query graph, without an explicit specification of the order of evaluation. To do so, we first characterize the set of expression trees that implement a given join/outerjoin query graph, and investigate the existence of transformations among the various trees. Our main theorem is that a join/outerjoin query is freely reorderable if the query graph derived from it falls within a particular class, every tree that “implements” such a graph evaluates to the same result.The result has applications to language design and query optimization. Languages that generate queries within such a class do not require the user to indicate priority among join operations, and hence may present a simplified syntax. And it is unnecessary to add extensive analyses to a conventional query optimizer in order to generate legal reorderings for a freely-reorderable language.Keywords
This publication has 3 references indexed in Scilit:
- Query processing techniques in the summary-table-by-example database query languageACM Transactions on Database Systems, 1989
- Processing queries with quantifiers a horticultural approachPublished by Association for Computing Machinery (ACM) ,1983
- The functional data model and the data languages DAPLEXACM Transactions on Database Systems, 1981