以下に、述語表現と関係データベースとの対応の例を示す。
述語表現との対応 | 関係スキーマ |
---|---|
class( X , Y ) ⇔ SELECT name, class FROM animals
has_milk( X ) ⇔ SELECT name FROM animals legs ( X , Y ) ⇔ SELECT name, legs FROM animals |
animals( name char(10), class char(10), milk char(10), legs integer, ... ) |
この例では、テーブルanimalsからname、classだけを取り出し、それを述語 class(X,Y).に対応させている。このとき変数Xは、SELECT文によって得られる テーブルの第一列(name)に、変数Yは第二列(class)にそれぞれ対応する。また 述語has_milk(X).には、テーブルanimalsに含まれるタプル中、属性'milk' ='yes'であるタプル集合の属性'name'に対応している。