JPH0333979A - 関係データベースの限定述語処理方法 - Google Patents

関係データベースの限定述語処理方法

Info

Publication number
JPH0333979A
JPH0333979A JP1168186A JP16818689A JPH0333979A JP H0333979 A JPH0333979 A JP H0333979A JP 1168186 A JP1168186 A JP 1168186A JP 16818689 A JP16818689 A JP 16818689A JP H0333979 A JPH0333979 A JP H0333979A
Authority
JP
Japan
Prior art keywords
result
predicate
subquery
stack
column
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP1168186A
Other languages
English (en)
Other versions
JP2836103B2 (ja
Inventor
Ichiro Itakura
板倉 一郎
Jinnosuke Nakamura
中村 仁之輔
Yukihisa Tsuchiya
土谷 往久
Takashi Horiuchi
孝 堀内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
NTT Inc
Original Assignee
Hitachi Ltd
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Nippon Telegraph and Telephone Corp filed Critical Hitachi Ltd
Priority to JP1168186A priority Critical patent/JP2836103B2/ja
Publication of JPH0333979A publication Critical patent/JPH0333979A/ja
Application granted granted Critical
Publication of JP2836103B2 publication Critical patent/JP2836103B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 【産業上の利用分野】
本発明は、関係データベースへの問合せにおける限定述
語処理方法に関し、特に比較演算子が=限定子がANY
である限定述語処理方法に関する。 〔従来の技術] 関係データベースは、例えばC0L、DATErデータ
ベース・システムの概論Jl(丸善(株)発行)に記載
されているように、行と列の表形式により表現されてい
る論理的なデータ構造を持ったデータベースのことであ
る。また、限定述語とは、関係データベースへの問合せ
の中で、副問合せを含む条件式の中に出現するものであ
り、例えば″列名′  ゛比較演算子″限定子°  ゛
副問合せ゛の形式により表現される。限定子の種類によ
り、副問合せの結果の要素の任意の1つないし全ての値
と主問合せの列の値とを比較して、比較演算子の条件を
満足するか否かを判定するものである。 一例を挙げて説明する。いま、データベース言語5QL
(JIS  X  3005−1987)1’表現する
と、下記のように表わされる。 5ELECT Al、A2.A3 FROM    TI W+−(ERE  A2=100  ANDA3=AN
Y(SELECT  BI FROM    T2 WHERE  B3<500) なお、上記表現中で、S E L ECTは出力列を指
定し、FROMはアクセス対象の表を指定し、WHER
Eは検索の条件を示している。また、WHE REの後
の条件式は、列A2の値が100に等しく、かつ列A3
の値が副問合せ結果の複数の値の任意の1つの値と等し
い行を返却することを示している。副問合せは、表T2
の列B3の値が500より小さい行の列Blを返却する
ことを示している。 限定子の種類は、ANY/SOMEとALLとがあり、
このうちANY/SOMEは副問合せの結果の要素値の
任意の1つが比較演算子を満足することを意味しており
、ALLは副問合せの結果の要素値の全てが比較41[
算子を満足することを意味する。 第4図は、従来における限定述語の処理システムの機能
ブロック図であり、第5図は第4図における動作フロー
チャートである。 第4図において、401は検索の条件を生成するための
プログラムを備えた検索条件作成部、402は実際に主
問合せの表の条件式と副問合せの表の条件式を満足する
ものを検索するためのプログラムを備えた検索処理部、
410は外部から人力する検索命令、411は副問合せ
の表の条件式、412は主問合せの表の条件式、421
は副問合せで検索する表、422は主問合せで検索する
表、423は副問合せ結果の要素群、424は検索結果
を格納するレジスタである。 次に、限定述語を含む検索処理の動作を、第5図により
述べる。 先ず、検索条件作成部401が検索命令410から副問
合せで検索する表421に対する条件式411を作成す
る(ステップ501)、次に、検索処理部402は、副
問合せで検索する表421に対する条件式411を評価
して、その結果を副問合せ結果の要素群423に格納す
る(ステップ502)0次に、検索条件作成部401は
検索命令410から主問合せで検索する表422に対す
る条件式412を作成する(ステップ503)、次に、
検索処理部402は、主問合せで検索する表422に対
する条件式412のうち、限定述語を除いた条件を評価
する(ステップ504)、次に、検索処理部402では
、副問合せ結果の要素群から要素を1個取り出し、限定
述語の比較演算子を満足するか否かを判定する(ステッ
プ505)、また、検索処理部402は、要素が比較演
算子を満足すれば(ステップ506)、限定述語の判定
結果を真として限定述語の評価を終了する(ステップ5
08)0次に、検索処理部402は、副問合せ結果の要
素群423から全ての要素を順次取り出し、要素がなく
なるまで上記処理を繰り返し行う(ステップ510) 
、次に、検索処理部402は、全ての要素の比較が終了
した時点で、限定述語の真偽判定を行う(ステップ51
1)。いずれかの評価が真であれば真、それ以外は偽と
する0次に、検索処理部402は、限定述語以外の評価
結果と限定述語の評価結果をまとめて評価し、該当行が
条件を満足するか否かを判定しくステップ512)、満
足する行を検索結果レジスタ424に格納する(ステッ
プ513)、次に、検索処理部402は。 表422から次の行を取り出し、取り出す行がなくなる
まで、ステップ504以降を繰り返し行う(ステップ5
14)。 このようにして、限定述語を含む検索処理が実行される
。なお、主問合せの検索対象の表422からは、全ての
行を取り出す必要がなく、限定述語以外の述語が限定述
語とANDで結合されている場合には、限定述語以外の
評価結果が真である行のみが限定述語の評価対象となる
。 〔発明が解決しようとする課題] 第4図および第5図に示すような従来の限定述語処理方
法では、副問合せの結果の要素がN個の場合、限定述語
を含む述語の評価は副問合せの結果の各要素に対して比
較演算子が満足するか否かを判定しているので、評価に
かかる時間は副問合せの結果の要素数Nに比例して増加
する。すなわち、限定子がANY/SOMEの場合、平
均N/2かかることになり、また限定子がALLの場合
にも、平均N/2だけかかることになる。その結果、評
価対象の行数がMの場合には、限定述語の評価時間は、
MXN/2だけ必要となるため、全体の処理時間は極め
て長くなってしまう。 本発明の目的は、このような従来の課題を解決し、主問
合せの各行の列と副問合せ結果の要素との比較回数を削
減し、限定述語処理を高速に実行できる関係データベー
スの限定述語処理方法を提供することにある。
【課題を解決するための手段】
上記目的を達成するため1本発明による関係データベー
スの限定述語処理方法は、関係データベースの問合せ中
、列名、比較演算子、限定子および副問合せの形式で表
現され、上記限定子の種類により副問合せの結果の要素
の任意の1つないし全ての4+(iと主問合せ列の値と
比較し、比較演算子の条件を満足するか否かを判定する
限定述語処理システムにおいて、上記比較演算子が=、
上記限定子がANYの場合に、副問合せ結果に対して同
じ値を持つ要素の除去とソートを行い、また主問合せの
行に対して副問合せ結果の要素以外の列の値を持つ行の
削除と限定述語で指定された列でのソートを行った後、
主問合せ結果の各行の列の値と副問合せ結果の要素とを
比較することに特徴がある。 【作  用J 本発明においては、主問合せの各行の限定述語で指定さ
れた列と、副問合せ結果の要素との比較を行う前に、副
問合せ結果に対して重複して同じ値を持つ要素を除去す
るとともに、ソートを行い、かつ主問合せの行から副問
合せ結果の要素以外の列の値を持つ行を除去し、限定述
語で指定された列でのソートを行う、これにより、主問
合せの各行の列と副問合せ結果の要素との比較回数を削
減することができるので、限定述語処理を高速かつ能率
的に行うことが可能である。 【実施例] 以下、本発明の実施例を、図面により祥細に説明する。 第1図は、本発明の一実施例を示す関係データベース検
索システムの構成図であり、第3図は第1図における限
定述語処理の動作フローチャートである。 第1図において、101は検索条件を作成するためのプ
ログラムを備えた検索条件作成部、102は検索処理プ
ログラムを備えた検索処理部、103は副問合せ結果に
対して重複して同じ値を持つ要素の除去とソートを行う
プログラムを備えた重複除去・ソート部、104は主問
合せの行から副問合せ結果の要素以外の列の値を持つ行
の除去と限定述語で指定された列でのソートを行うプロ
グラムを備えたふるい落とし・ソート部、105は限定
述語を判定するプログラムを備えた限定述語判定部、1
10は検索命令、Illは副問合せの表の条件式、11
2は主問合せの表の条件式、1’21は副問合せで検索
する表、122は主問合せで検索する表、123は副問
合せ結果を格納するスタック、124は主問合せ結果を
格納するスタック、125は副問合せ結果の重複除去・
ソートした結果を格納するスタック、126は主問合せ
結果のふるい落とし・ソートした結果を格納するスタッ
ク、127は検索結果を格納するスタックである。 第1図を第5図と比較すれば明らかなように、本発明で
は、新たに重複除去・ソート部103とふるい落とし・
ソート部104と、それらの結果および対象を格納する
ための副問合せ結果の重複除去・ソート結果格納スタッ
ク125と主問合せ結果のふるい落とし・ソート結果格
納スタック126と主問合せ結果格納スタック124と
、限定述語判定部105を設けている。 第3図により、本発明の限定述語処理の手順を説明する
。 先ず、検索条件作成部101が検索命令110から副問
合せで検索する表121に対する条件式Illを作成す
る(ステップ301)、次に、検索処理部102は、副
問合せで検索する表121に対する条件式111を評価
して、その結果を副問合せ結果スタック123に格納す
る(ステップ302)0次に、重複除去・ソート部10
3において、副問合せ結果スタック123から重複して
同じ値を持つ要素を除去し、かつソートを行い、副問合
せ結果の重複除去・ソートした結果スタック125に格
納する(ステップ303)0次に、検索条件作成部10
1は、検索命令110から主問合せでM索する表122
に対する条件式(限定述語を除<)l l 2を作成す
る(ステップ304)、検索処理部102は、主問合せ
で検索する表122に対する条件式112を評価して、
その結果を主問合せ結果スタック124に格納する(ス
テップ305)、次に、ふるい落とし・ソート部104
は、副問合せ結果の重複除去・ソートした結果スタック
125を参照して、主問合せ結果スタック124から副
問合せ結果の要素以外の列の値を持つ行の除去とソート
を行い、主問合せ結果のふルい落とし・ソートした結果
スタック126に格納する(ステップ306)、限定述
語判定部105は、主問合せ結果のふるい落とし・ソー
トした結果スタック126の行の限定述語で指定された
列の値と、副問合せ結果の重複除去・ソートした結果ス
タック125の要素を比較することにより、限定述語の
判定を行い(ステップ307)、満足するスタック12
6中の行を検索結果スタック127に格納する(ステッ
プ308,309)。 このようにして、少ない比較回数で限定述3/1処理を
行うことができるので、処理時mノの短縮が可能となる
。 第2図は、第1図による限定述語処理の具体例を示す図
である。 第2図において、201は検索条件作成部、202は検
索処理部、203は重複除去・ソート部、204はふる
い落とし・ソート部、205は限定述語判定部、210
は検索命令、211は副問合せの表の条件式、212は
主問合せの表の条件式、221は副問合せが検索する表
、222は主問合せが検索する表、223は副問合せ結
果、224は主問合せ結果、225は副問合せ結果の重
複除去・ソート結果、226は主問合せ結果のふるい落
とし・ソート結果、227は検索結果である。 検索命令は、以下に示すものを用いて行われたものとす
る。 5ELECT本 FROM    会社 WHERE   地区=“東京’ AND社番社格NY
(SELECT社番 FRO社格  ff11品 WHERE  在車≦50) この検索命令は、部品表の中から在1dlが50以下の
部品を仇給する会社に関する情報を会社から返却するこ
とを示している。 限定述語の処理は、第3図に従って、次の順序で行われ
る。 (i)先ず、検索条件作成部201では、検索命令21
0から副問合せで検索する表221(部品表)に対する
条件式211を作成する(ステップ31)。 (1i)検索処理部202では、副問合せで検索する表
221に対する条件式211を評価して、その結果を副
問合せ結果スタック223に格納する(ステップ302
)、すなわち、表221で在車が50以下のもは電池と
ソケットと電球の3種であり、その社番は2と3である
ため、スタック223には、社格2.3.2が格納され
る。 (iii)次に、ffif重複除去−ト部203では、
副問合せ結果223から重複して同じ値を持つ要素の除
去を行うとともに、ソートを行い(社格2を除去)、副
問合せ結果の重複除去・ソートした結果225にこれら
を格納する(ステップ303)。 (iv )検索条件作成部201で、検索命令210か
ら主問合せで検索する表222に対する条件式(限定述
語を除<)212を作成する(ステップ304)、すな
わち、地区が東京の会社を返却する検索条件である。 (v)検索処理rfrJ202では、主rm合せで検索
する表222に対する条件式212を評価して、主問合
せ結果224に格納する(ステップ305)、すなわち
、格納された会社は1社番が3のB社と、社格が4の0
社と、社格が2のD社である。 (vi)ふるい落とし・ソート部204では、副問合せ
結果の重複除去・ソートした結果225を参照して、主
問合せ結果の表224から副問合せ結果の要素以外の列
の値を持つ打の除去(社格4の行の除去)とソートを行
い、その結果を主問合せ結果のふるい落とし・ソートし
た結果226に格納する(ステップ306)。 (Vii)限定述語判定部205では、主問合せ結果の
ふるい落とし・ソートした結果226の行の限定述語で
指定された列の値と、副問合せ結果の重複除去・ソート
した結果225の要素を比較することにより、限定述語
の判定を行い(ステップ307)、満足する行がどれか
を調べ(ステップ308)、結果226の中の満足する
行(社格2と3)を検索結果227に格納する(ステッ
プ309)。 このようにして、部品表の中から在庫が50以下の部品
を供給する会社を検索することができた。 次に、本発明による限定述語の処理において、比較演算
子が=、限定子がANYの場合、副問合せ結果の要素数
をM1要素の重複度(全要素数と異なる値を持つ要素数
との比≧1)をD、主問合せの行数をN1ふるい落とし
率(全行数と副問合せ結果の要素と同じ値を持つ行数の
比≧1)をSとすると、比較回数は次のようになる。 すなわち、従来の方法では、前述のように平均比較回数
A、は、A、=MXN/2であるのに対して、本発明で
は、平均比較回数A1が、A、= (M/D)+(N/
S)である。 本発明の値が従来の値よりも小さいことを確認するため
に、A、をA、で除算すると、次の値になる。 A、NDMS 本発明による比較回数が従来方法の回数よりも少なくな
るのは、D=S=1の時で、M、N)4のときであるが
、−股間にはM)10.N)100程度であるため、限
定述語処理時間の短縮が図れる。 〔発明の効果J 以上説明したように、本発明によれば、主問合せの各行
の限定述語で指定された列と1.副問合せ結果の要素と
を比較する前に、副問合せ結果に対して重複して同じ値
を持つ要素の除去とソート、主問合せの行から副問合せ
結果の要素以外の列の値を持つ行の除去と限定述語で指
定された列でのソートを行うので、主問合せの各行の列
と副問合せ結果の要素との比較回数を削減することがで
き、従って限定述語処理を高速に行うことが可能である
【図面の簡単な説明】
ft51図は本発明の一実施例を示す関係データベース
検索システムの機能ブロック図、第2図は第1図におけ
る具体例を示す説明図、第3図は第1図における限定述
語処理の動作フローチャート、第4図は従来の関係デー
タベース検索システムの機能ブロック図、第5図は第4
図における限定述語処理の動作フローチャートである。 101.201,401 :検索条件作成部、1’02
,202,402 :検索処理部、103゜203=重
複除去・ソート部、104,204:ふるい落とし・ソ
ート部、105,205:限定述語判定部、110,2
10,410:検索命令、Il!、211,411:周
問合せの表の条件式、112.212,412:主問合
せの表の条件式、121.221,421 :副問合せ
で検索する表、122.222,422:主問合せで検
索する表、123.223,423:副問合せ結果の要
素群、124.224:主問合せ結果スタック、125
゜225=副問合せ結果の重複除去・ソート結果スタッ
ク、、126,226:主問合せ結果のふるい落とし・
ソート結果スタック、127,227゜424:検索結
果スタック。

Claims (1)

    【特許請求の範囲】
  1. (1)関係データベースの問合せ中、列名、比較演算子
    、限定子および副問合せの形式で表現され、上記限定子
    の種類により副問合せの結果の要素の任意の1つないし
    全ての値と主問合せ列の値と比較し、比較演算子の条件
    を満足するか否かを判定する限定述語処理システムにお
    いて、上記比較演算子が=、上記限定子がANYの場合
    に、副問合せ結果に対して同じ値を持つ要素の除去とソ
    ートを行い、また主問合せの行に対して副問合せ結果の
    要素以外の列の値を持つ行の削除と限定述語で指定され
    た列でのソートを行った後、主問合せ結果の各行の列の
    値と副問合せ結果の要素とを比較することを特徴とする
    関係データベースの限定述語処理方法。
JP1168186A 1989-06-29 1989-06-29 関係データベースの限定述語処理方法 Expired - Lifetime JP2836103B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1168186A JP2836103B2 (ja) 1989-06-29 1989-06-29 関係データベースの限定述語処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1168186A JP2836103B2 (ja) 1989-06-29 1989-06-29 関係データベースの限定述語処理方法

Publications (2)

Publication Number Publication Date
JPH0333979A true JPH0333979A (ja) 1991-02-14
JP2836103B2 JP2836103B2 (ja) 1998-12-14

Family

ID=15863380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1168186A Expired - Lifetime JP2836103B2 (ja) 1989-06-29 1989-06-29 関係データベースの限定述語処理方法

Country Status (1)

Country Link
JP (1) JP2836103B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05128164A (ja) * 1990-03-27 1993-05-25 Internatl Business Mach Corp <Ibm> データベース処理装置
KR20030039018A (ko) * 2001-11-09 2003-05-17 노기문 밀폐용기
KR20030097240A (ko) * 2002-06-20 2003-12-31 하나코비 주식회사 밀폐용기의 뚜껑밀봉용 패킹

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05128164A (ja) * 1990-03-27 1993-05-25 Internatl Business Mach Corp <Ibm> データベース処理装置
KR20030039018A (ko) * 2001-11-09 2003-05-17 노기문 밀폐용기
KR20030097240A (ko) * 2002-06-20 2003-12-31 하나코비 주식회사 밀폐용기의 뚜껑밀봉용 패킹

Also Published As

Publication number Publication date
JP2836103B2 (ja) 1998-12-14

Similar Documents

Publication Publication Date Title
US5960428A (en) Star/join query optimization
US6185557B1 (en) Merge join process
O'Neil et al. Multi-table joins through bitmapped join indices
CA2232938C (en) Method and apparatus for performing a join query in a database system
EP0444358B1 (en) Dynamic optimization of a single relation access
US5241648A (en) Hybrid technique for joining tables
US5987467A (en) Method of calculating tuples for data cubes
US5822748A (en) Group by and distinct sort elimination using cost-based optimization
US7111025B2 (en) Information retrieval system and method using index ANDing for improving performance
US5598559A (en) Method and apparatus for optimizing queries having group-by operators
US20090055350A1 (en) Aggregate query optimization
CN100399324C (zh) 嵌入式数据库查询的处理方法
AU4867699A (en) Value-instance-connectivity computer-implemented database
US20030097354A1 (en) Method and system for index sampled tablescan
US7536379B2 (en) Performing a multiple table join operating based on generated predicates from materialized results
US6925463B2 (en) Method and system for query processing by combining indexes of multilevel granularity or composition
Silva et al. Database similarity join for metric spaces
US7373340B2 (en) Computer implemented method and according computer program product for storing data sets in and retrieving data sets from a data storage system
JPH0333979A (ja) 関係データベースの限定述語処理方法
US6694324B1 (en) Determination of records with a specified number of largest or smallest values in a parallel database system
Barg et al. A fast and versatile path index for querying semi-structured data
Kotsis et al. Elimination of redundant views in multidimensional aggregates
JP6828334B2 (ja) データベース管理装置、データベース管理システム、データベース管理方法、および、データベース管理プログラム
KR100333682B1 (ko) 객체-관계 데이터베이스 관리 시스템에서의 역 포인터를이용한 그루핑 연산 방법 및 그 방법에서 생성된 그룹테이블을 이용한 집계 함수 획득 방법
Scheufele et al. Optimal ordering of selections and joins in acyclic queries with expensive predicates

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071009

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081009

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091009

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091009

Year of fee payment: 11