Jump to content

Boolean conjunctive query

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Trylks (talk | contribs) at 14:01, 30 June 2015 (What are "appropriate tuples of values" for a relation? Are relations intensional or extensional?). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In the theory of relational databases, a Boolean conjunctive query is a conjunctive query without distinguished predicates, i.e., a query in the form , where each is a relation symbol and each is a tuple of variables and constants; the number of elements in is equal to the arity of . Such a query evaluates to either true or false depending on whether the relations in the database contain the appropriate tuples of values, i.e. the conjunction is valid according to the facts in the database.

As an example, if a database schema contains the relation symbols (binary, who's the father of whom) and (unary, who is employed), a conjunctive query could be . This query evaluates to true if there exists an individual who is a child of Mark and employed. In other words, this query expresses the question: "does Mark have employed children?"

See also

References

  • G. Gottlob, N. Leone, F. Scarcello (2001). "The complexity of acyclic conjunctive queries". Journal of the ACM (JACM). 48 (3): 431–498. doi:10.1145/382780.382783.{{cite journal}}: CS1 maint: multiple names: authors list (link)