JPH0769923B2 - データベース・システム及び分析方法 - Google Patents
データベース・システム及び分析方法Info
- Publication number
- JPH0769923B2 JPH0769923B2 JP3165261A JP16526191A JPH0769923B2 JP H0769923 B2 JPH0769923 B2 JP H0769923B2 JP 3165261 A JP3165261 A JP 3165261A JP 16526191 A JP16526191 A JP 16526191A JP H0769923 B2 JPH0769923 B2 JP H0769923B2
- Authority
- JP
- Japan
- Prior art keywords
- join
- database
- database table
- graph
- symbol
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2423—Interactive query statement specification based on a database schema
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99934—Query formulation, input preparation, or translation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【産業上の利用分野】本発明は対話型のコンピュータ・
データベース情報検索の分野において照会で指定された
種々のデータベースのテーブルの間の関係を分析する方
法及びシステムに関する。
データベース情報検索の分野において照会で指定された
種々のデータベースのテーブルの間の関係を分析する方
法及びシステムに関する。
【0002】
【従来の技術】コンピュータ・データベースを構成する
1つの方法はデータを分類し、データの行(row) 及び列
(column)から成るテーブル(表)にすることである。例
えば、従業員のテーブルでは、行は特定の従業員の情報
を含み列は各従業員の部門番号を含むことがある。一般
に、データベースは多くのテーブルを含み各々のテーブ
ルは複数の行及び列を含む。
1つの方法はデータを分類し、データの行(row) 及び列
(column)から成るテーブル(表)にすることである。例
えば、従業員のテーブルでは、行は特定の従業員の情報
を含み列は各従業員の部門番号を含むことがある。一般
に、データベースは多くのテーブルを含み各々のテーブ
ルは複数の行及び列を含む。
【0003】データはこのタイプのデータベースから種
々の方法で検索することができる。例えば、コンピュー
タ・プログラムは、人間が介在せずに、データベースか
ら情報を引出す、即ちデータベース・システムのフロン
トエンド (front-end)として役立つ照会システム・プロ
グラムと対話することができる。従来、これらの照会シ
ステム・プログラムは、検索を容易にするために、所要
の情報を入力するタスクを実行する情報をユーザにプロ
ンプトする。これらのシステムはプロンプト式照会シス
テム(PQS)として知られている。
々の方法で検索することができる。例えば、コンピュー
タ・プログラムは、人間が介在せずに、データベースか
ら情報を引出す、即ちデータベース・システムのフロン
トエンド (front-end)として役立つ照会システム・プロ
グラムと対話することができる。従来、これらの照会シ
ステム・プログラムは、検索を容易にするために、所要
の情報を入力するタスクを実行する情報をユーザにプロ
ンプトする。これらのシステムはプロンプト式照会シス
テム(PQS)として知られている。
【0004】一般に、PQSと対話するユーザは探索す
べきテーブルを指定し前記テーブルのそれぞれの列の間
の関係を指定するようにプロンプトされる。テーブル間
の列関係の指定はテーブルの結合と呼ばれる。テーブル
はテーブル間の列の対様式の合同により結合される。結
合は、1つのテーブル内のデータがもう1つのテーブル
内のデータを説明し又は明確にするのに役立つように、
テーブルを越えて追加の情報を取得することを可能にす
る。例えば、従業員に関する従業員テーブル行は'76'の
ように従業員の部門番号を記載するが、部門'76'の定義
はもう1つのテーブル、部門テーブルの参照を必要とす
る。部門テーブルは各部門番号に関連した完全な部門名
が記載されている。この第2のテーブルでは、部門'76'
の行は、部門名"情報システム部"を有する列も含む。従
って、部門名を含む全従業員のリストを含む報告を作成
しようとするユーザは、従業員テーブルの部門番号の列
と部門テーブルの部門名の列の間の結合関係を確立し、
従業員の部門を部門番号の代りに部門名で印刷できるよ
うにしたいことがある。
べきテーブルを指定し前記テーブルのそれぞれの列の間
の関係を指定するようにプロンプトされる。テーブル間
の列関係の指定はテーブルの結合と呼ばれる。テーブル
はテーブル間の列の対様式の合同により結合される。結
合は、1つのテーブル内のデータがもう1つのテーブル
内のデータを説明し又は明確にするのに役立つように、
テーブルを越えて追加の情報を取得することを可能にす
る。例えば、従業員に関する従業員テーブル行は'76'の
ように従業員の部門番号を記載するが、部門'76'の定義
はもう1つのテーブル、部門テーブルの参照を必要とす
る。部門テーブルは各部門番号に関連した完全な部門名
が記載されている。この第2のテーブルでは、部門'76'
の行は、部門名"情報システム部"を有する列も含む。従
って、部門名を含む全従業員のリストを含む報告を作成
しようとするユーザは、従業員テーブルの部門番号の列
と部門テーブルの部門名の列の間の結合関係を確立し、
従業員の部門を部門番号の代りに部門名で印刷できるよ
うにしたいことがある。
【0005】結合は下記のようなステートメントを入力
することにより前記PQS(プロンプト式照会システ
ム)に対して指定される。 W AND X X AND Y Y AND Z この場合、W、X、Y及びZは特定のテーブル内の列に
付与された記号名である。結合は4つの情報、2つのテ
ーブル名と2つの列名を意味する。ユーザが列名を入力
すると、テーブル名が間接的に包含又は参照される。列
W、X等に対応するテーブル名はT(W)、T(X)等
のように記述し、列名に基づいてテーブル名を見つける
ことができる。PQSは現在の結合の全てを完全に指定
するのに十分な情報を含む結合リストを維持する必要が
ある。この情況では、結合リスト内の情報は、参照され
た情報を発見できるメモリ・アドレス、'Q.TAB1'
のような記号名、又は間接的に参照する他の任意の手段
としてもよい。結合リストは単に結合ステートメントの
リストでもよい。
することにより前記PQS(プロンプト式照会システ
ム)に対して指定される。 W AND X X AND Y Y AND Z この場合、W、X、Y及びZは特定のテーブル内の列に
付与された記号名である。結合は4つの情報、2つのテ
ーブル名と2つの列名を意味する。ユーザが列名を入力
すると、テーブル名が間接的に包含又は参照される。列
W、X等に対応するテーブル名はT(W)、T(X)等
のように記述し、列名に基づいてテーブル名を見つける
ことができる。PQSは現在の結合の全てを完全に指定
するのに十分な情報を含む結合リストを維持する必要が
ある。この情況では、結合リスト内の情報は、参照され
た情報を発見できるメモリ・アドレス、'Q.TAB1'
のような記号名、又は間接的に参照する他の任意の手段
としてもよい。結合リストは単に結合ステートメントの
リストでもよい。
【0006】
【発明が解決しようとする課題】ユーザはPQSによる
対話セッション中にテーブル又は結合の指定を間違えた
り前に指定したテーブル又は結合を削除したりする試行
錯誤の後に漸く照会を終了することがある。特にこれら
の理由により、結合リストは首尾一貫性のために分析さ
れる必要がある。前に首尾一貫性があったリストから1
以上の結合を削除すると当該リストはもはや首尾一貫性
がないことがある。例えば、もし X AND Y 結合が
前述の3つの結合から削除され、T(W)、T(X)、T
(Y)及びT(Z)は全てばらばらのテーブルであったなら
ば、W-X対及びY-Z対の間はリンクしていないであろ
う。この状況が起きる時は、PQSは何か動作する必要
がある。従来の技術では、この動作は、全体の結合リス
トを消去し新しい結合リストの構築をユーザに強制す
る。そのために、ユーザは、特に2つのテーブルの複数
の列の間に結合があるとき、かなりの量の作業を再実行
する必要がある。従って、必要なことはPQSが残りの
結合を分析しどの結合を保持できるかを識別する判定を
行なう方法及びシステムであり、この判定を実行できる
方法が必要である。
対話セッション中にテーブル又は結合の指定を間違えた
り前に指定したテーブル又は結合を削除したりする試行
錯誤の後に漸く照会を終了することがある。特にこれら
の理由により、結合リストは首尾一貫性のために分析さ
れる必要がある。前に首尾一貫性があったリストから1
以上の結合を削除すると当該リストはもはや首尾一貫性
がないことがある。例えば、もし X AND Y 結合が
前述の3つの結合から削除され、T(W)、T(X)、T
(Y)及びT(Z)は全てばらばらのテーブルであったなら
ば、W-X対及びY-Z対の間はリンクしていないであろ
う。この状況が起きる時は、PQSは何か動作する必要
がある。従来の技術では、この動作は、全体の結合リス
トを消去し新しい結合リストの構築をユーザに強制す
る。そのために、ユーザは、特に2つのテーブルの複数
の列の間に結合があるとき、かなりの量の作業を再実行
する必要がある。従って、必要なことはPQSが残りの
結合を分析しどの結合を保持できるかを識別する判定を
行なう方法及びシステムであり、この判定を実行できる
方法が必要である。
【0007】
【課題を解決するための手段】本発明は、結合リスト中
のテーブルの全てが互いに結合しているかどうかを判定
し、もしそれらが結合していなければ妥当な処置をとる
ために、リストの結合を分析するための方法及びコンピ
ュータ・データベース・システムである。第1に、別々
にリンクされたデータベース・テーブル名のグループが
決定される。もし2以上のグループが存在すれば、結合
リストの調整が必要である。もしT(W)がT(X)と結合
され且つT(X)がT(Y)と結合されていれば、T(W)、
T(X)及びT(Y)はリンクされたグループ内にあると言
われる。もし前記グループ内に他のテーブルがなけれ
ば、それは別々にリンクされたグループである。もしT
(Z)が他のテーブルと結合されていれば、第2の別々に
リンクされたグループがある。選択されたグループに対
応しない全ての結合された対を結合リストから削除する
ことにより結合リストがどれか1つのグループから成る
ように調整することができる。選択されたグループは、
PQSによってユーザが入力した第1のテーブル名を含
むグループを決定し、最大数のテーブル又は結合を含む
グループを決定し、前記グループの選択をユーザにプロ
ンプトすることにより、又は任意の他の論理的なプロセ
スにより、自動的に決定することができる。結合リスト
が調整される前又は調整された後に追加の結合ステート
メントを入力するようにユーザがプロンプトされること
もありうる。このように、結合リストの全てのステート
メントの再入力を必要とせずに結合リストの首尾一貫性
が保証される。
のテーブルの全てが互いに結合しているかどうかを判定
し、もしそれらが結合していなければ妥当な処置をとる
ために、リストの結合を分析するための方法及びコンピ
ュータ・データベース・システムである。第1に、別々
にリンクされたデータベース・テーブル名のグループが
決定される。もし2以上のグループが存在すれば、結合
リストの調整が必要である。もしT(W)がT(X)と結合
され且つT(X)がT(Y)と結合されていれば、T(W)、
T(X)及びT(Y)はリンクされたグループ内にあると言
われる。もし前記グループ内に他のテーブルがなけれ
ば、それは別々にリンクされたグループである。もしT
(Z)が他のテーブルと結合されていれば、第2の別々に
リンクされたグループがある。選択されたグループに対
応しない全ての結合された対を結合リストから削除する
ことにより結合リストがどれか1つのグループから成る
ように調整することができる。選択されたグループは、
PQSによってユーザが入力した第1のテーブル名を含
むグループを決定し、最大数のテーブル又は結合を含む
グループを決定し、前記グループの選択をユーザにプロ
ンプトすることにより、又は任意の他の論理的なプロセ
スにより、自動的に決定することができる。結合リスト
が調整される前又は調整された後に追加の結合ステート
メントを入力するようにユーザがプロンプトされること
もありうる。このように、結合リストの全てのステート
メントの再入力を必要とせずに結合リストの首尾一貫性
が保証される。
【0008】
【実施例】結合リストを分析する良好な方法はグラフ理
論に基づいた手法を用いることである。グラフは記号な
らびに図形で形成することができる。グラフは互いにラ
イン(線)で接続されたノードである。もし結合リスト
で参照されたテーブルがグラフのノードとして表示され
るならば、結合はノードを接続するラインとして表示す
ることができる。
論に基づいた手法を用いることである。グラフは記号な
らびに図形で形成することができる。グラフは互いにラ
イン(線)で接続されたノードである。もし結合リスト
で参照されたテーブルがグラフのノードとして表示され
るならば、結合はノードを接続するラインとして表示す
ることができる。
【0009】図1は6つの結合ステートメントを含む単
純な結合リストの実施例を示す。テーブルの名前はA、
B、C、D及びEとして記載されている。'左'と'右'の
列にある名前は、ユーザが入力した結合ステートメント
の左側及び右側でそれぞれ参照されたテーブル名であ
る。対応する左右のテーブルの列名、CL及びCRは関
連テーブル名を引出すのに必要な場合以外は要求されな
いからブランクのままである。このリスト中の各行は結
合されたテーブルの対を表わす。例えば、最初の行はテ
ーブルAがテーブルBと結合されていることを示し、最
後の行はテーブルDがテーブルEと結合されていること
を示す。結合リストが取得できるエントリ数には固有の
限界はない。結合リストが持つ必要がある特定のフォー
マットもない。必要なことは、結合リスト中の情報が結
合関係のテーブルを識別するのに十分であることだけで
ある。
純な結合リストの実施例を示す。テーブルの名前はA、
B、C、D及びEとして記載されている。'左'と'右'の
列にある名前は、ユーザが入力した結合ステートメント
の左側及び右側でそれぞれ参照されたテーブル名であ
る。対応する左右のテーブルの列名、CL及びCRは関
連テーブル名を引出すのに必要な場合以外は要求されな
いからブランクのままである。このリスト中の各行は結
合されたテーブルの対を表わす。例えば、最初の行はテ
ーブルAがテーブルBと結合されていることを示し、最
後の行はテーブルDがテーブルEと結合されていること
を示す。結合リストが取得できるエントリ数には固有の
限界はない。結合リストが持つ必要がある特定のフォー
マットもない。必要なことは、結合リスト中の情報が結
合関係のテーブルを識別するのに十分であることだけで
ある。
【0010】図2は図1の結合リストのグラフ表示であ
る。テーブルはテーブル名を含むノードによって表示さ
れる。結合関係、即ち2つのノードを接続するライン
は、当該ラインが接続する2つのノードを示す記号によ
って参照することができる。従って、ABはテーブルA
とテーブルBの間の結合関係である。これらの規約を仮
定すれば、図2のグラフの記号表示はノード (A,B,
C,D,E),ライン(AB,BC,BD,CE,DE,DE) で
ある。
る。テーブルはテーブル名を含むノードによって表示さ
れる。結合関係、即ち2つのノードを接続するライン
は、当該ラインが接続する2つのノードを示す記号によ
って参照することができる。従って、ABはテーブルA
とテーブルBの間の結合関係である。これらの規約を仮
定すれば、図2のグラフの記号表示はノード (A,B,
C,D,E),ライン(AB,BC,BD,CE,DE,DE) で
ある。
【0011】結合関係又はテーブルを削除することは、
ライン又はノードをグラフから削除することに等しい。
1以上の削除後、複数の別々にリンクされたノードのグ
ループが存在し、前に1つのグラフであったものを複数
のグラフにすることがある。本明細書で用いる用語グラ
フは、データベース・テーブル名を表わす別々にリンク
されたノードのグループを意味する。結合の削除により
対応するラインが図面から削除される。テーブルの削除
により、対応するノード及び全ての接続ラインが図面か
ら削除される。CEが図2から削除されても、構造は依
然として1つのグラフである。BDが削除されても、2
つの異なるグラフを含む2つの別々にリンクされたグル
ープがある。この状態は図3に示す。グラフが作成され
るとき、人間は2以上のグループのノードがあるかどう
かを目視で判定できる。PQSでこの分析を実行するた
めのマシン実現可能な方法は異なるアプローチを用いな
ければならない。
ライン又はノードをグラフから削除することに等しい。
1以上の削除後、複数の別々にリンクされたノードのグ
ループが存在し、前に1つのグラフであったものを複数
のグラフにすることがある。本明細書で用いる用語グラ
フは、データベース・テーブル名を表わす別々にリンク
されたノードのグループを意味する。結合の削除により
対応するラインが図面から削除される。テーブルの削除
により、対応するノード及び全ての接続ラインが図面か
ら削除される。CEが図2から削除されても、構造は依
然として1つのグラフである。BDが削除されても、2
つの異なるグラフを含む2つの別々にリンクされたグル
ープがある。この状態は図3に示す。グラフが作成され
るとき、人間は2以上のグループのノードがあるかどう
かを目視で判定できる。PQSでこの分析を実行するた
めのマシン実現可能な方法は異なるアプローチを用いな
ければならない。
【0012】結合リストはグラフの数を決定するのに用
いられる。Nノードのセットは1からNまでのグラフを
作ることができる。Nエレメントのアレイはどのテーブ
ルがどのグラフに属するかを追跡するために用いられ
る。これはグラフ・アレイと呼ばれる。図4は本発明の
方法の概要を示す。結合リストで参照されるNデータベ
ース・テーブルの全てのリストはステップ41で作られ
る。このリストは特定の順序を必要としない。次に、各
々の特定のテーブル名に関連した特定の記号を有するグ
ラフ・アレイが初期化される(ステップ42)。これら
の記号はテーブル名自体、番号又は任意の記号とするこ
とができる。リスト中の最初のテーブル名はグラフ・ア
レイ内の最初のエレメントに関連し、以下同様に1対1
で対応する。グラフ・アレイは、エレメント1に1つの
記号、エレメント2に別の記号、等と記憶することによ
り初期化され、従ってグラフ・アレイ内の2つの記号が
同じになることはない。結合リスト中のテーブル名の各
対は反復処理される(ステップ46)。現に処理中のテ
ーブル名の対の左エントリに関連したグラフ記号を見つ
けて変数L_SYMBOLに記憶し(ステップ43)、右エント
リに関連したグラフ記号を見つけて変数R_SYMBOLに記憶
する(ステップ44)。変数R_SYMBOLに記憶された全て
のグラフ記号の存在についてグラフ・アレイを探索し、
それらを変数L_SYMBOLに記憶されたグラフ記号に置き換
える(ステップ45)。結合リスト中の全ての対が処理
された後、グラフ・アレイの内容は、結合リストの調整
について判定(47)するために容易に使用できるテー
ブルのグループの数及び内容の簡単な表示を含む。本発
明の方法は結合関係の可換的特性を利用してグラフ記号
の数を簡単にし最小にする。従って、アレイで見つかっ
た異なるグラフ記号の数はプロセスの終りには結合リス
ト中のグラフの数に正確に一致する。
いられる。Nノードのセットは1からNまでのグラフを
作ることができる。Nエレメントのアレイはどのテーブ
ルがどのグラフに属するかを追跡するために用いられ
る。これはグラフ・アレイと呼ばれる。図4は本発明の
方法の概要を示す。結合リストで参照されるNデータベ
ース・テーブルの全てのリストはステップ41で作られ
る。このリストは特定の順序を必要としない。次に、各
々の特定のテーブル名に関連した特定の記号を有するグ
ラフ・アレイが初期化される(ステップ42)。これら
の記号はテーブル名自体、番号又は任意の記号とするこ
とができる。リスト中の最初のテーブル名はグラフ・ア
レイ内の最初のエレメントに関連し、以下同様に1対1
で対応する。グラフ・アレイは、エレメント1に1つの
記号、エレメント2に別の記号、等と記憶することによ
り初期化され、従ってグラフ・アレイ内の2つの記号が
同じになることはない。結合リスト中のテーブル名の各
対は反復処理される(ステップ46)。現に処理中のテ
ーブル名の対の左エントリに関連したグラフ記号を見つ
けて変数L_SYMBOLに記憶し(ステップ43)、右エント
リに関連したグラフ記号を見つけて変数R_SYMBOLに記憶
する(ステップ44)。変数R_SYMBOLに記憶された全て
のグラフ記号の存在についてグラフ・アレイを探索し、
それらを変数L_SYMBOLに記憶されたグラフ記号に置き換
える(ステップ45)。結合リスト中の全ての対が処理
された後、グラフ・アレイの内容は、結合リストの調整
について判定(47)するために容易に使用できるテー
ブルのグループの数及び内容の簡単な表示を含む。本発
明の方法は結合関係の可換的特性を利用してグラフ記号
の数を簡単にし最小にする。従って、アレイで見つかっ
た異なるグラフ記号の数はプロセスの終りには結合リス
ト中のグラフの数に正確に一致する。
【0013】結合リストは最終的には唯1つの別々にリ
ンクされたグループのテーブルを含むように調整する必
要がある。1つのグループを選択する任意の論理的な基
準を用いることができる。もし最も多数のテーブルを含
むグループ又は最も多数の結合を含むグループが選択さ
れれば、結合を指定する際にユーザが前に実行した最大
量の作業は保存することができる。グループを選択する
もう1つの論理的な基準はユーザが最初に入力したテー
ブル名を含むグループを選択することができる。グルー
プについての意味のある情報によってプロンプトされた
後にユーザがグループを選択できることは妥当な選択で
ある。調整プロセス中の異なる時点で追加の結合ステー
トメントを入力する機会をユーザに与えることもでき
る。
ンクされたグループのテーブルを含むように調整する必
要がある。1つのグループを選択する任意の論理的な基
準を用いることができる。もし最も多数のテーブルを含
むグループ又は最も多数の結合を含むグループが選択さ
れれば、結合を指定する際にユーザが前に実行した最大
量の作業は保存することができる。グループを選択する
もう1つの論理的な基準はユーザが最初に入力したテー
ブル名を含むグループを選択することができる。グルー
プについての意味のある情報によってプロンプトされた
後にユーザがグループを選択できることは妥当な選択で
ある。調整プロセス中の異なる時点で追加の結合ステー
トメントを入力する機会をユーザに与えることもでき
る。
【0014】図5はアルゴリズムの一部を擬似コードで
記述する方法の例を示す。擬似コード例の開始点で、N
は結合リスト中のテーブルの数を包含する必要がある。
テーブル名はリスト中にあり、テーブル名を入力とし当
該テーブル名に対応する数値インデックスを返す関数NU
MERIC_INDEX() によってアクセスできなければならな
い。数値インデックスはリスト中の名前の位置とみなす
ことができる。名前のリストを生成するコード及び関数
NUMERIC_INDEX() のコードは示されていない。行501
〜504で、擬似コード、GRAPH_IDENTIFIERS及びGRAPH
_ID_COUNT で用いる2つのアレイが初期化される。GRAP
H_IDENTIFIERS はグラフ内の帰属関係を追跡するために
用いられる。GRAPH_ID_COUNTは各グループ内のテーブル
の数をカウントするために用いられる。これらのアレイ
はコンピュータのメモリで生成され更新されることが望
ましい。行502では、1からNまでのGRAPH_IDENTIFI
ERSのエレメントの各々は1からNまでの特定の数にセ
ットされる。行503では、GRAPH_ID_COUNTのエレメン
トの各々は0にセットされる。グラフ処理は行505〜
513で実行される。結合リスト中のエントリの各々に
ついて外部ループによる1つのパス(処理)が実行される
(行505)。行506では、テーブル名のインデック
スを取得する関数NUMERIC_INDEX() によって左エントリ
に名前を供給することにより、結合された対の中の左エ
ントリの現在のグラフ記号が発見され、GRAPH_IDENTIFI
ERS アレイ内のグラフ記号を参照するために用いられ
る。グラフ記号は変数L_SYMBOLに挿入される。行507
では、結合対の中の右エントリの現在のグラフ記号が同
じように発見され、変数R_SYMBOLに挿入される。内部ル
ープ(行509〜512)では、GRAPH_IDENTIFIERS ア
レイは、R_SYMBOLの内容に等しい全ての記号を変更し、
それらをL_SYMBOLの内容に置き換えることによって調整
される。
記述する方法の例を示す。擬似コード例の開始点で、N
は結合リスト中のテーブルの数を包含する必要がある。
テーブル名はリスト中にあり、テーブル名を入力とし当
該テーブル名に対応する数値インデックスを返す関数NU
MERIC_INDEX() によってアクセスできなければならな
い。数値インデックスはリスト中の名前の位置とみなす
ことができる。名前のリストを生成するコード及び関数
NUMERIC_INDEX() のコードは示されていない。行501
〜504で、擬似コード、GRAPH_IDENTIFIERS及びGRAPH
_ID_COUNT で用いる2つのアレイが初期化される。GRAP
H_IDENTIFIERS はグラフ内の帰属関係を追跡するために
用いられる。GRAPH_ID_COUNTは各グループ内のテーブル
の数をカウントするために用いられる。これらのアレイ
はコンピュータのメモリで生成され更新されることが望
ましい。行502では、1からNまでのGRAPH_IDENTIFI
ERSのエレメントの各々は1からNまでの特定の数にセ
ットされる。行503では、GRAPH_ID_COUNTのエレメン
トの各々は0にセットされる。グラフ処理は行505〜
513で実行される。結合リスト中のエントリの各々に
ついて外部ループによる1つのパス(処理)が実行される
(行505)。行506では、テーブル名のインデック
スを取得する関数NUMERIC_INDEX() によって左エントリ
に名前を供給することにより、結合された対の中の左エ
ントリの現在のグラフ記号が発見され、GRAPH_IDENTIFI
ERS アレイ内のグラフ記号を参照するために用いられ
る。グラフ記号は変数L_SYMBOLに挿入される。行507
では、結合対の中の右エントリの現在のグラフ記号が同
じように発見され、変数R_SYMBOLに挿入される。内部ル
ープ(行509〜512)では、GRAPH_IDENTIFIERS ア
レイは、R_SYMBOLの内容に等しい全ての記号を変更し、
それらをL_SYMBOLの内容に置き換えることによって調整
される。
【0015】結合された対が全て処理された後、GRAPH_
IDENTIFIERS アレイ内の情報は更に処理することができ
る。同じグラフ記号を含むエレメントは同じグラフ内の
ノードを表わす。行514で、変数MULTIPLE_GRAPHS が
誤り(false) として初期化される。GRAPH_IDENTIFIERS
アレイ内のエレメントの各々を検査して統計を累算する
(行515〜520)。もしGRAPH_IDENTIFIERS アレイ
内の全ての記号が等しくなければ、MULTIPLE_GRAPHS は
真(true)にセットされる(行518、519)。行51
6及び行517では、各グループ内のテーブルの数はGR
OUP_ID_COUNTアレイでカウントされる。
IDENTIFIERS アレイ内の情報は更に処理することができ
る。同じグラフ記号を含むエレメントは同じグラフ内の
ノードを表わす。行514で、変数MULTIPLE_GRAPHS が
誤り(false) として初期化される。GRAPH_IDENTIFIERS
アレイ内のエレメントの各々を検査して統計を累算する
(行515〜520)。もしGRAPH_IDENTIFIERS アレイ
内の全ての記号が等しくなければ、MULTIPLE_GRAPHS は
真(true)にセットされる(行518、519)。行51
6及び行517では、各グループ内のテーブルの数はGR
OUP_ID_COUNTアレイでカウントされる。
【0016】もし関数NUMERIC_INDEX() がユーザにより
最初に入力されたテーブル名のインデックスの番号1を
返すならば、前記最初に入力されたテーブル名を含むグ
ループはGRAPH_IDENTIFIERS(1)の中と同じ記号を有する
全てのノードから成る。最も多数のテーブルを含むグル
ープは、GROUP_ID_COUNTアレイ内の最も大きい番号のイ
ンデックスを見つけることにより発見することができ
る。そして、このインデックスを用いてGRAPH_IDENTIFI
ERS アレイ内のグループのグラフ記号を見つけることが
できる。そしてグラフ記号を用いてグループのメンバー
の全てを見つけることができる。ここでGRAPH_IDENTIFI
ERS アレイ内のあらゆる特定の記号は別々のグループを
表わすから、これらのグループを容易に決定し、ユーザ
による選択又は操作のために表示することができる。
最初に入力されたテーブル名のインデックスの番号1を
返すならば、前記最初に入力されたテーブル名を含むグ
ループはGRAPH_IDENTIFIERS(1)の中と同じ記号を有する
全てのノードから成る。最も多数のテーブルを含むグル
ープは、GROUP_ID_COUNTアレイ内の最も大きい番号のイ
ンデックスを見つけることにより発見することができ
る。そして、このインデックスを用いてGRAPH_IDENTIFI
ERS アレイ内のグループのグラフ記号を見つけることが
できる。そしてグラフ記号を用いてグループのメンバー
の全てを見つけることができる。ここでGRAPH_IDENTIFI
ERS アレイ内のあらゆる特定の記号は別々のグループを
表わすから、これらのグループを容易に決定し、ユーザ
による選択又は操作のために表示することができる。
【0017】図3の例の説明により前記アプローチを更
に明確にする。図6で、61は図3の結合リストのテー
ブル名のリストである。初期化されたGRAPH_IDENTIFIER
S アレイは62に示す。最初の特定の記号、番号 '1'
〜 '5'は全ての可能なグラフを表わすアレイ・エレメ
ントに挿入される。テーブル名AはGRAPH_IDENTIFIERS
アレイの第1のエレメントに関連する。従って、テーブ
ルAの最初のグラフ記号は'1'である。同様に、図6の
点線で示すように、各テーブル名は対応するアレイ・エ
レメントに関連する。図3には4本のラインがあるか
ら、メイン・ループによる4回のパスがある(図4のス
テップ43〜46及び図5の行505〜513参照)。
結合を表わすラインは任意の順序で処理できる。この場
合、BCが最初に処理される。この対の左テーブル・エ
ントリは関連インデックス2を持つBである。GRAPH_ID
ENTIFIERS アレイの第2のエレメントは '2' であるか
ら、L_SYMBOLは '2' にセットされる(図4のステップ
43、図5の行506参照)。この対の右テーブル・エ
ントリは関連インデックス3を持つCである。GRAPH_ID
ENTIFIERS アレイの第3のエレメントは '3' であるか
ら、R_SYMBOLは '3' にセットされる(図4のステップ
44、図5の行507参照)。この時点で '3' に等し
いアレイの全てのエレメントは'2'に変更される(図6
のアレイ63)。ここでアレイを検査すると、それらは
同じグラフ記号、即ち '2' を持つので、BとCは同じ
グラフ内にあることを示す。ABの結合は前にBに分類
された全てのノードをAに分類し直す(アレイ64)。
この時点で、A及びCは直接に結合されてはいないが、
同じグループ内にあることが分かる。DE結合はEのグ
ラフ記号をDのグラフ記号に置き換える(アレイ6
5)。DEのもう1つの結合の処理はアレイの内容に変
更を生じない(アレイ66)。最後のアレイの内容か
ら、2つの別々にリンクされたグループのテーブルを表
わす2つのグラフがあり、1つのグループ内のテーブル
の最大数は3であることが容易に分かる。
に明確にする。図6で、61は図3の結合リストのテー
ブル名のリストである。初期化されたGRAPH_IDENTIFIER
S アレイは62に示す。最初の特定の記号、番号 '1'
〜 '5'は全ての可能なグラフを表わすアレイ・エレメ
ントに挿入される。テーブル名AはGRAPH_IDENTIFIERS
アレイの第1のエレメントに関連する。従って、テーブ
ルAの最初のグラフ記号は'1'である。同様に、図6の
点線で示すように、各テーブル名は対応するアレイ・エ
レメントに関連する。図3には4本のラインがあるか
ら、メイン・ループによる4回のパスがある(図4のス
テップ43〜46及び図5の行505〜513参照)。
結合を表わすラインは任意の順序で処理できる。この場
合、BCが最初に処理される。この対の左テーブル・エ
ントリは関連インデックス2を持つBである。GRAPH_ID
ENTIFIERS アレイの第2のエレメントは '2' であるか
ら、L_SYMBOLは '2' にセットされる(図4のステップ
43、図5の行506参照)。この対の右テーブル・エ
ントリは関連インデックス3を持つCである。GRAPH_ID
ENTIFIERS アレイの第3のエレメントは '3' であるか
ら、R_SYMBOLは '3' にセットされる(図4のステップ
44、図5の行507参照)。この時点で '3' に等し
いアレイの全てのエレメントは'2'に変更される(図6
のアレイ63)。ここでアレイを検査すると、それらは
同じグラフ記号、即ち '2' を持つので、BとCは同じ
グラフ内にあることを示す。ABの結合は前にBに分類
された全てのノードをAに分類し直す(アレイ64)。
この時点で、A及びCは直接に結合されてはいないが、
同じグループ内にあることが分かる。DE結合はEのグ
ラフ記号をDのグラフ記号に置き換える(アレイ6
5)。DEのもう1つの結合の処理はアレイの内容に変
更を生じない(アレイ66)。最後のアレイの内容か
ら、2つの別々にリンクされたグループのテーブルを表
わす2つのグラフがあり、1つのグループ内のテーブル
の最大数は3であることが容易に分かる。
【0018】図7はPQSを含むコンピュータ・システ
ムの例を示す。一般に、ディスク駆動機構71のような
データ記憶装置は、データベース・テーブル及び対話型
データベース検索システムを構成するコンピュータ・プ
ログラムを含む。小型のシステムはディスク駆動機構の
代りにディスケットを用いることもある。コンピュータ
・プログラムが最初に導入されるとき、データベース・
テーブルはない。後に、前記プログラムを実行するユー
ザがテーブルを作成する。端末75でユーザが適切なコ
マンドを入力するとき、プロセッサ74は一般にディス
ク駆動機構71から記憶装置72にPQSプログラム7
6をロードする。PQSは一般にデータベース・システ
ムの照会プロセッサ部73として記憶装置の中でランす
る。端末でユーザが入力したコマンド、ステートメント
及び情報は照会プロセッサの入力言語に変換される。前
記言語は、例えば、普通の照会言語SQLかもしれな
い。PQSにより生成されたプロンプトは端末に表示さ
れる。
ムの例を示す。一般に、ディスク駆動機構71のような
データ記憶装置は、データベース・テーブル及び対話型
データベース検索システムを構成するコンピュータ・プ
ログラムを含む。小型のシステムはディスク駆動機構の
代りにディスケットを用いることもある。コンピュータ
・プログラムが最初に導入されるとき、データベース・
テーブルはない。後に、前記プログラムを実行するユー
ザがテーブルを作成する。端末75でユーザが適切なコ
マンドを入力するとき、プロセッサ74は一般にディス
ク駆動機構71から記憶装置72にPQSプログラム7
6をロードする。PQSは一般にデータベース・システ
ムの照会プロセッサ部73として記憶装置の中でランす
る。端末でユーザが入力したコマンド、ステートメント
及び情報は照会プロセッサの入力言語に変換される。前
記言語は、例えば、普通の照会言語SQLかもしれな
い。PQSにより生成されたプロンプトは端末に表示さ
れる。
【0019】本発明の方法を実施するPQSは普通のコ
ンピュータ・プログラミング手法を用いて構築される。
PQSで実行できるコードはROM、ディスケット、磁
気テープ又は他の記憶装置にマシン読取可能な形式で記
憶される。コンピュータはそれらのメモリからデータを
検索する。検索されたデータ(コード)はメモリにロード
されプログラムとして実行することができる。
ンピュータ・プログラミング手法を用いて構築される。
PQSで実行できるコードはROM、ディスケット、磁
気テープ又は他の記憶装置にマシン読取可能な形式で記
憶される。コンピュータはそれらのメモリからデータを
検索する。検索されたデータ(コード)はメモリにロード
されプログラムとして実行することができる。
【0020】グラフ分析手法を利用する前述の方法及び
システムは、グループの1つを選択し且つ(又は)追加
の結合を付加することによって結合リストを知的に調整
できるように、PQSが結合リストを分解して別々にリ
ンクされたグループにすることを可能にする。結合リス
トを分析する能力は従来の技術の方法又はシステムより
も進んでいる。
システムは、グループの1つを選択し且つ(又は)追加
の結合を付加することによって結合リストを知的に調整
できるように、PQSが結合リストを分解して別々にリ
ンクされたグループにすることを可能にする。結合リス
トを分析する能力は従来の技術の方法又はシステムより
も進んでいる。
【0021】本発明の実施によって改善することができ
る他のPQS関連動作は当業者には容易に認識されるで
あろう。
る他のPQS関連動作は当業者には容易に認識されるで
あろう。
【0022】
【発明の効果】本発明によれば、結合のリストを分析し
て結合リスト内の全てのテーブルが互いに結合されてい
るかとうかを判定し、もし結合されていなければ妥当な
動作を行なう方法及びコンピュータ・データベース・シ
ステムが提供される。
て結合リスト内の全てのテーブルが互いに結合されてい
るかとうかを判定し、もし結合されていなければ妥当な
動作を行なう方法及びコンピュータ・データベース・シ
ステムが提供される。
【図1】結合リストの実施例を示す図である。
【図2】図1の結合リストからのテーブルの間の結合関
係を表わす図である。
係を表わす図である。
【図3】一部の結合を削除した後の図2のテーブル関係
を示す図である。
を示す図である。
【図4】本発明の方法の実施例の流れの概要を示す図で
ある。
ある。
【図5】本発明の方法の実施例の一部分の擬似コードの
例を示す図である。
例を示す図である。
【図6】初期状態と最終状態の間の中間状態のグラフ配
列例を示す図である。
列例を示す図である。
【図7】プロンプトされた照会システムを有するコンピ
ュータ・システムの概要を示す図である。
ュータ・システムの概要を示す図である。
71 ディスク駆動機構 72 記憶装置 73 データベース・システム 74 プロセッサ 75 端末 76 PQSプログラム
Claims (15)
- 【請求項1】複数の指名されたデータベース・テーブル
を有するデータベースにおいて、データベース・テーブ
ル名を論理的に結合する結合ステートメントのセットを
コンピュータによって分析する方法であって、 (a)ユーザが入力したデータベース・テーブル名の結合
対であって、入力された後にユーザが1またはそれ以上
の上記結合対を削除したことに応じてデータベース・テ
ーブル名の結合対の結合リストを作成するステップ、 (b)グラフ・アレイのエレメントは前記結合ステートメ
ントのセットにおいて参照されるデータベース・テーブ
ル名に1対1で関連づけられており、グラフ・アレイ内
の各エレメントは関連する特定のグラフ記号に初期化さ
れ、結合ステートメントはデータベース・テーブル名の
1つの結合対に関係し、該結合対は左エントリと右エン
トリを有し、このようなエレメントを有するグラフ・ア
レイを作成し、グラフ・アレイを反復して調整し、各結
合ステートメントを順次処理していく過程でデータベー
ス・テーブル名の結合対の右エレメントを該結合対の左
エレメントのグラフ記号に関連づけし、別々にリンクさ
れたデータベース・テーブル名のグループを決定するた
めに前記結合リストを分析するステップ、及び (c)選択されたグループ内にないすべてのデータベース
・テーブル名を削除することにより、リンクされたデー
タベース・テーブル名の選択されたグループのみを含む
ように前記結合リストを調整するステップを含むデータ
ベース分析方法。 - 【請求項2】前記結合リストを調整するステップは更に
結合ステートメントを入力するようにユーザにプロンプ
トするステップを含む請求項1のデータベース分析方
法。 - 【請求項3】前記結合リストを調整するステップは更に
ユーザが最初に入力したデータベース・テーブル名を含
む前記別々にリンクされたデータベース・テーブル名の
グループを決定するステップを含む請求項1のデータベ
ース分析方法。 - 【請求項4】前記結合リストを調整するステップは更に
最も多数のデータベース・テーブル名又は最も多数の結
合を含む前記別々にリンクされたデータベース・テーブ
ル名のグループを決定するステップを含む請求項1のデ
ータベース分析方法。 - 【請求項5】データ記憶装置、表示端末、前記データ記
憶装置に複数のデータベース・テーブルを作成する手
段、ユーザがデータベース検索ステートメントを入力す
る際に援助するために前記端末にプロンプト情報を表示
する手段、及び前記プロンプト情報に応答してユーザが
前記端末に入力した論理的にデータベース・テーブル名
に結合する結合ステートメントのセットを読取る手段を
含むタイプの改良されたコンピュータ・データベース・
システムであって、 (a)既に入力された前記結合ステートメントの1つをユ
ーザが削除する手段、 (b)前記削除する手段に結合され、グラフ・アレイのエ
レメントは前記結合ステートメントのセットにおいて参
照されるデータベース・テーブル名に1対1で関連づけ
られており、グラフ・アレイ内の各エレメントは関連す
る特定のグラフ記号に初期化され、各結合ステートメン
トはデータベース・テーブル名の指定された結合対に関
係し、該指定された結合対は左エントリと右エントリを
有し、このようなエレメントを有するグラフ・アレイを
作成し、グラフ・アレイを反復して調整し、データベー
ス・テーブル名の指定された結合対の右エレメントを該
指定された結合対の左エレメントのグラフ記号に関連づ
けし、別々にリンクされたデータベース・テーブル名の
グループを決定するために前記結合ステートメントのセ
ットを分析する手段、及び (c)別々にリンクされたデータベース・テーブル名のグ
ループを1つだけ含むように前記結合ステートメントの
セットを調整する手段を含むコンピュータ・データベー
ス・システム。 - 【請求項6】前記結合ステートメントのセットを調整す
る手段は更に結合ステートメントを入力するようにユー
ザにプロンプトする手段を含む請求項5のコンピュータ
・データベース・システム。 - 【請求項7】前記結合ステートメントのセットを調整す
る手段は更に別々にリンクされたデータベース・テーブ
ル名のグループを選択するようにユーザにプロンプトす
る手段を含む請求項5のコンピュータ・データベース・
システム。 - 【請求項8】前記結合ステートメントのセットを調整す
る手段は更に最も多数のデータベース・テーブル名又は
最も多数の結合を含む別々にリンクされたデータベース
・テーブル名のグループを決定する手段を含む請求項5
のコンピュータ・データベース・システム。 - 【請求項9】前記結合ステートメントのセットを調整す
る手段は更にユーザにより最初に入力されたデータベー
ス・テーブル名を含む別々にリンクされたデータベース
・テーブル名のグループを決定するための手段を含む請
求項5のコンピュータ・データベース・システム。 - 【請求項10】複数の指名されたかつ別個のデータベー
ス・テーブルを有するデータベースにおいて、データベ
ース・テーブル名を論理的に結合する結合ステートメン
トのセットをコンピュータで分析する方法であって、 (a)データベース・テーブル名の結合対は左エントリ及
び右エントリを有し、データベース・テーブル名の結合
対の結合リストを作成するステップ、 (b)前記結合リスト内の各データベース・テーブル名を
特定のグラフ記号に関連づけるステップ、 (c)前記結合リスト内の結合されたデータベース・テー
ブル名の結合対に対してステップ(d)乃至ステップ(f)を
反復するステップ、 (d)前記左エントリ名関連のグラフ記号(L_SYMBOL)を見
つけるステップ、 (e)前記右エントリ名関連のグラフ記号(R_SYMBOL)を見
つけるステップ、 (f)R_SYMBOLに等しい全てのグラフ記号を変更し、それ
らをL_SYMBOLに等しくするステップ、及び (g)前記結合リスト内の全てのデータベース・テーブル
名が共通のグラフ記号に関連するように前記結合リスト
を調整するステップを含むコンピュータ分析方法。 - 【請求項11】前記調整ステップは更に (a)ユーザによって最初に入力されたデータベース・テ
ーブル名を決定するステップ、及び (b)前記最初に入力されたデータベース・テーブル名と
同じグラフ記号に関連するデータベース・テーブル名を
決定するステップを含む請求項10のコンピュータ分析
方法。 - 【請求項12】前記調整ステップは更に最も多数のデー
タベース名又は最も多数の結合を有するデータベース名
のグループを決定するステップを含む請求項10のコン
ピュータ分析方法。 - 【請求項13】前記調整ステップは更に前記データベー
ス・テーブル名を分類して共通の関連したグラフ記号を
有するグループにするステップを含む請求項10のコン
ピュータ分析方法。 - 【請求項14】前記ステップは更にデータベース・テー
ブル名のグループを選択するようにユーザにプロンプト
するステップを含む請求項13のコンピュータ分析方
法。 - 【請求項15】前記調整ステップは更に選択されたグラ
フ記号に関連しないデータベース・テーブル名の全ての
対を前記結合リストから削除するステップを含む請求項
10のコンピュータ分析方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/576,022 US5287493A (en) | 1990-08-31 | 1990-08-31 | Database interactive prompted query system having named database tables linked together by a user through join statements |
| US576022 | 1990-08-31 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04237374A JPH04237374A (ja) | 1992-08-25 |
| JPH0769923B2 true JPH0769923B2 (ja) | 1995-07-31 |
Family
ID=24302657
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3165261A Expired - Lifetime JPH0769923B2 (ja) | 1990-08-31 | 1991-06-11 | データベース・システム及び分析方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5287493A (ja) |
| EP (1) | EP0476810B1 (ja) |
| JP (1) | JPH0769923B2 (ja) |
| DE (1) | DE69130350T2 (ja) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5444842A (en) * | 1992-07-24 | 1995-08-22 | Bentson; Sheridan | Method and apparatus for displaying and updating structured information |
| JPH0660063A (ja) * | 1992-08-05 | 1994-03-04 | Matsushita Electric Ind Co Ltd | 漢字変換装置 |
| US5469568A (en) * | 1993-01-07 | 1995-11-21 | International Business Machines Corporation | Method for choosing largest selectivities among eligible predicates of join equivalence classes for query optimization |
| JP3021224B2 (ja) * | 1993-03-03 | 2000-03-15 | 松下電器産業株式会社 | 辞書検索装置 |
| JP2710548B2 (ja) * | 1993-03-17 | 1998-02-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データを検索する方法およびブール代数文表現と図形表現を互いに変換する方法 |
| US5544352A (en) * | 1993-06-14 | 1996-08-06 | Libertech, Inc. | Method and apparatus for indexing, searching and displaying data |
| US5519859A (en) * | 1993-11-15 | 1996-05-21 | Grace; John A. | Method and apparatus for automatic table selection and generation of structured query language instructions |
| US5745746A (en) * | 1996-06-24 | 1998-04-28 | International Business Machines Corporation | Method for localizing execution of subqueries and determining collocation of execution of subqueries in a parallel database |
| USRE37965E1 (en) | 1995-09-27 | 2003-01-07 | International Business Machines Corporation | Method for localizing execution or subqueries and determining collocation of execution of subqueries in a parallel database |
| US5692181A (en) * | 1995-10-12 | 1997-11-25 | Ncr Corporation | System and method for generating reports from a computer database |
| US5903893A (en) * | 1997-09-15 | 1999-05-11 | International Business Machines Corporation | Method and apparatus for optimizing a merge-join operation across heterogeneous databases |
| US6757677B2 (en) * | 2001-09-28 | 2004-06-29 | Ncr Corporation | Providing a join plan using group-by operator |
| EP1349082A1 (en) * | 2002-03-28 | 2003-10-01 | LION Bioscience AG | Method and apparatus for querying relational databases |
| EP1349081A1 (en) * | 2002-03-28 | 2003-10-01 | LION Bioscience AG | Method and apparatus for querying relational databases |
| GB2401211B (en) * | 2003-04-30 | 2005-07-20 | Oracle Int Corp | SQL join elimination |
| US9165040B1 (en) | 2006-10-12 | 2015-10-20 | Google Inc. | Producing a ranking for pages using distances in a web-link graph |
| US9229982B2 (en) * | 2008-12-23 | 2016-01-05 | SAP France S.A. | Processing queries using oriented query paths |
| US20150356175A1 (en) * | 2014-06-05 | 2015-12-10 | Kpmg Llp | System and method for finding and inventorying data from multiple, distinct data repositories |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01181125A (ja) * | 1988-01-13 | 1989-07-19 | Nippon Steel Corp | 関係型データベース装置 |
-
1990
- 1990-08-31 US US07/576,022 patent/US5287493A/en not_active Expired - Fee Related
-
1991
- 1991-06-11 JP JP3165261A patent/JPH0769923B2/ja not_active Expired - Lifetime
- 1991-07-18 EP EP91306546A patent/EP0476810B1/en not_active Expired - Lifetime
- 1991-07-18 DE DE69130350T patent/DE69130350T2/de not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| EP0476810A2 (en) | 1992-03-25 |
| EP0476810B1 (en) | 1998-10-14 |
| EP0476810A3 (en) | 1993-10-20 |
| DE69130350D1 (de) | 1998-11-19 |
| DE69130350T2 (de) | 1999-06-02 |
| US5287493A (en) | 1994-02-15 |
| JPH04237374A (ja) | 1992-08-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0769923B2 (ja) | データベース・システム及び分析方法 | |
| US5960428A (en) | Star/join query optimization | |
| US5727196A (en) | Optimized query interface for database management systems | |
| US6058391A (en) | Enhanced user view/update capability for managing data from relational tables | |
| US5893088A (en) | System and method for performing database query using a marker table | |
| US6185556B1 (en) | Method and apparatus for changing temporal database | |
| US10031938B2 (en) | Determining Boolean logic and operator precedence of query conditions | |
| US20010003455A1 (en) | Method, system and graphic user interface for entering and editing filter conditions for filtering a database | |
| US7373358B2 (en) | User interface for maintaining categorization schemes | |
| JPH03130874A (ja) | リレーショナル・データベースの検索処理方式 | |
| US5613142A (en) | Join processing system and method for joining relations based on join fields in a relational database | |
| US20060004693A1 (en) | Graphical user interface for exploring databases | |
| KR20060015527A (ko) | 데이터베이스 장치, 데이터베이스 검색 장치 및 검색 방법 | |
| JPH11265368A (ja) | 作業手順管理システム | |
| JP3531579B2 (ja) | マルチメディア文書生成装置及び方法、及びこれらをコンピュータに実行させるプログラムを記録した記録媒体 | |
| US7433882B2 (en) | Data management system and computer program | |
| JPH0439774A (ja) | 検索方式 | |
| CN114237803A (zh) | 一种基于交互感知的软件及时帮助方法及系统 | |
| JPH07319742A (ja) | 論理削除データ物理削除方式 | |
| JPH09212515A (ja) | 情報検索装置 | |
| JP2903941B2 (ja) | データ検索装置 | |
| EP0569188A1 (en) | Accessing a computer database | |
| JPH11242627A (ja) | データアクセス方法およびプログラムを記録した媒体 | |
| CN119783803A (zh) | 面向复杂关系型业务数据库的知识图谱构建方法和系统 | |
| JPH05313971A (ja) | リレーショナル・データベースにおけるキーワード管理方式 |