next up previous
Next: PrologとSQLとの対応 Up: 関係データベースと連結した帰納推論エンジンの開発 Previous: 関係データベースと連結した帰納推論エンジンの開発

述語表現と関係データベースとの対応


関係データベース中のデータを述語表現に対応付ける際、述語に関係スキーマその ものを対応させるのではなく、述語にある条件を満たすタプルの集合を対応させる。 すなわち、一つのSQL文の結果として得られるタプル集合に、一つの述語を対応さ せることになる。このことは、新たなビューを作成し、そのビューに対して述語を 対応づけることに等しい。

以下に、述語表現と関係データベースとの対応の例を示す。

述語表現との対応関係スキーマ
 class( X , Y ) ⇔ SELECT name, class FROM animals

 has_milk( X ) ⇔ SELECT name FROM animals
               WHERE mild = ' yes '

 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'に対応している。



next up previous
Next: PrologとSQLとの対応 Up: 関係データベースと連結した帰納推論エンジンの開発 Previous: 関係データベースと連結した帰納推論エンジンの開発



www-admin@icot.or.jp