"複数の条件式の組み合わせで構成された論理式が記述されている検索クエリを解析することにより、前記検索クエリから前記論理式及び各条件式を特定する検索クエリ解析部と、前記特定された各条件式について、前記条件式に適合するレコードのIDの値を抽出する条件式処理部と、レコードIDの値と前記複数の条件式にそれぞれ対応する複数の適合結果値とを有する判定セットを含んだ情報である論理式判定情報内の、前記抽出したレコードID値及び前記条件式に対応する適合結果値を、適合を意味する第1の値に変更し、前記論理式判定情報における各判定セットについて、前記判定セットが有する複数の適合結果値を前記論理式に基づいて論理演算する第1の論理式処理部と、前記論理演算の結果として適合を意味する第1の値が得られた判定セットが有するレコードID値に適合するレコードID値に対応するレコードを、前記検索クエリで指定されているテーブルから検索し、その検索の結果に関する検索結果情報を出力する検索結果生成部とを備えるデータベース管理システム。第2の論理式処理部をさらに備え、前記論理式判定情報は、第1の記憶装置に格納されており、前記テーブルは、第2の記憶装置に格納されており、前記論理式処理部は、前記抽出されたレコードID値が、前記論理式判定情報が有するいずれのレコードID値とも適合しない場合、前記論理式判定情報に新たな判定セットを追加できるか否かを判定し、前記判定の結果が否定的な場合、前記条件式に対応するレコードID値として、前記抽出されたレコードID値を前記第2の記憶装置に格納し、前記第2の論理式処理部は、前記第2の記憶装置に格納されているレコードID値が前記複数の条件式のいずれに対応するかを基に、そのレコードID値について、前記論理式の論理演算を実行し、前記検索結果生成部は、前記第1の論理式処理部による前記論理演算の結果として適合を意味する第1の値が得られたレコードID値に対応するレコードと、前記第2の論理式処理部による前記論理演算の結果として適合を意味する第1の値が得られたレコードID値に対応するレコードとを、前記検索クエリで指定されているテーブルから検索し、その検索の結果に関する検索結果情報を出力する請求項1記載のデータベース管理システム。前記第1の論理式処理部は、前記判定の結果が肯定的な場合、前記抽出されたレコードID値を有する新たな判定セットを前記論理式判定テーブルに追加し、前記論理式判定情報に新たな判定セットを追加できるか否かの判定は、前記論理式判定情報に含まれている判定セットの数が所定数以下か否かである請求項2記載のデータベース管理システム。前記第1の論理式処理部は、前記論理式判定情報において、前記複数の適合結果値の全てが前記第1の値である判定セットを前記論理式判定情報から削除する、請求項3記載のデータベース管理システム。前記第1の論理式処理部は、前記判定の結果が肯定的な場合、前記抽出されたレコードID値が前記第2の記憶装置に格納されていなければ、前記抽出されたレコードID値を有する新たな判定セットを前記論理式判定テーブルに追加し、前記第2の記憶装置に前記抽出されたレコードID値が前記記憶領域に格納されていれば、前記抽出されたレコードID値を前記第2の記憶装置に格納する、請求項4記載のデータベース管理システム。前記1の記憶装置は、前記第2の記憶装置よりもデータの入出力の速度が早い請求項5記載のデータベース管理システム。前記第1の論理式処理部は、前記判定の結果が肯定的な場合、前記抽出されたレコードID値が前記第2の記憶装置に格納されていなければ、前記抽出されたレコードID値を有する新たな判定セットを前記論理式判定テーブルに追加し、前記第2の記憶装置に前記抽出されたレコードID値が前記記憶領域に格納されていれば、前記抽出されたレコードID値を前記第2の記憶装置に格納する、請求項2記載のデータベース管理システム。前記第1の論理式処理部は、前記論理式判定情報において、前記複数の適合結果値の全てが前記第1の値である判定セットを前記論理式判定情報から削除する請求項1記載のデータベース管理システム。前記条件式処理部と前記第1の論理式処理部はそれぞれ独立したプロセスとして実行され、前記条件式処理部が、前記条件式のIDと前記抽出されたレコードID値とを含んだ情報である条件式適合情報を、記憶領域に格納し、前記第1の論理式処理部が、前記記憶領域から、前記条件式適合情報を取得し、その情報から、前記レコードID値を取得する請求項1記載のデータベース管理システム。前記クエリ解析部において抽出された条件式ごとに前記条件式処理部のプロセスが実行され、前記プロセスは並列に実行される請求項1記載のデータベース管理システム。前記論理式処理部は、前記抽出されたレコードID値が、前記論理式判定情報が有するいずれのレコードID値とも適合しない場合、前記論理式判定情報に新たな判定セットを追加できるか否かを判定し、前記判定の結果が肯定的な場合、前記抽出されたレコードID値を有する新たな判定セットを前記論理式判定テーブルに追加する、請求項1記載のデータベース管理システム。前記論理式判定情報に新たな判定セットを追加できるか否かの判定は、前記論理式判定情報に含まれている判定セットの数が所定数以下か否かである請求項11記載のデータベース管理システム。第2の記憶装置が、前記テーブルを記憶し、前記第2の記憶装置よりもデータの入出力の速度が早い第1の記憶装置が、前記論理式判定情報を記憶する、請求項1記載のデータベース管理システム。複数の条件式の組み合わせで構成された論理式が記述されている検索クエリを解析することにより、前記検索クエリから前記論理式及び各条件式を特定し、前記特定された各条件式について、前記条件式に適合するレコードのIDの値を抽出し、レコードIDの値と前記複数の条件式にそれぞれ対応する複数の適合結果値とを有する判定セットを含んだ情報である論理式判定情報内の、前記抽出したレコードID値及び前記条件式に対応する適合結果値を、適合を意味する第1の値に変更し、前記論理式判定情報における各判定セットについて、前記判定セットが有する複数の適合結果値を前記論理式に基づいて論理演算し、前記論理演算の結果として適合を意味する第1の値が得られた判定セットが有するレコードID値に適合するレコードID値に対応するレコードを、前記検索クエリで指定されているテーブルから検索し、その検索の結果に関する検索結果情報を出力する、データベース管理方法。検索クエリを受け付けるインタフェース装置と、第2の記憶装置よりもデータ入出力速度が速い第1の記憶装置と、前記インタフェース装置及び前記第1の記憶装置に接続されたプロセッサとを有し、前記プロセッサが、複数の条件式の組み合わせで構成された論理式が記述されている検索クエリを解析することにより、前記検索クエリから前記論理式及び各条件式を特定し、前記特定された各条件式について、前記条件式に適合するレコードのIDの値を抽出し、レコードIDの値と前記複数の条件式にそれぞれ対応する複数の適合結果値とを有する判定セットを含んだ情報であり前記第1の記憶装置に格納された論理式判定情報内の、前記抽出したレコードID値及び前記条件式に対応する適合結果値を、適合を意味する第1の値に変更し、前記論理式判定情報における各判定セットについて、前記判定セットが有する複数の適合結果値を前記論理式に基づいて論理演算し、前記論理演算の結果として適合を意味する第1の値が得られた判定セットが有するレコードID値に適合するレコードID値に対応するレコードを、前記検索クエリで指定されており前記第2の記憶装置内のテーブルから検索し、その検索の結果に関する検索結果情報を出力する、データベース管理装置。図14は、従来の検索方式の一例を示す。以下、図14を用いて、例えば特許文献1に記載されているような従来の検索方式について説明する。なお、図14には、同種の要素に付された参照符号は、親符号と子符号との組合せで構成されているが、以下の説明では、同種の要素を特に区別しない場合には、親符号のみを使用することにする。検索クエリ900には、検索式以下、論理式902が記述されている。論理式902は、複数の条件式の組合せで構成されている。DBMSは、検索クエリ900の条件式901を満たすレコードのレコードIDそれぞれを抽出し、条件式901ごとに、レコードIDのリスト920を生成する911。DBMSは、各条件式901のレコードIDリスト920をソートし、ソート済みのレコードIDリスト921を生成する912。DBMSは、条件式901a~901cのソート済みレコードIDリスト921a~921cを、論理式902に基づいて論理演算し、演算結果が真となったレコードIDを含んだ論理演算済みレコードIDリスト922を生成する。以上の処理により、DBMSは、検索クエリ900に適合するレコードIDをRDBから抽出できる。しかし、上記の方式は、条件式を満たすレコードIDが多い場合、レコードIDリストのデータサイズが大きくなり、ソートの処理を主記憶装置例えばメモリ内だけで完結できない。この場合、主記憶装置よりも記憶容量の大きい補助記憶装置例えば、HDDHardDiskDrive又はフラッシュメモリ等を使用してソートをする必要がある。しかし、補助記憶装置は主記憶装置と比較してデータの入出力の速度が遅いため、ソートに要する時間が長くなってしまう。すなわち、検索処理にかかる時間が長くなってしまう。そこで、本発明の目的は、複数の条件式の組み合わせで構成された検索式に適合するデータをDBから検索する処理に要する時間を短縮することである。データベース管理システムDBMSが、検索クエリから論理式及び各条件式を特定し、特定された各条件式について、条件式に適合するレコードのIDの値を抽出する。DBMSは、レコードIDの値と複数の条件式にそれぞれ対応する複数の適合結果値とを有する判定セットを含んだ情報である論理式判定情報内の、抽出したレコードID値及び条件式に対応する適合結果値を、適合を意味する第1の値に変更し、論理式判定情報における各判定セットについて、判定セットが有する複数の適合結果値を論理式に基づいて論理演算する。DBMSは、論理演算の結果として適合を意味する第1の値が得られた判定セットが有するレコードID値に適合するレコードID値に対応するレコードを、検索クエリで指定されているテーブルから検索し、その検索の結果に関する検索結果情報を出力する。第2の記憶装置が、上記テーブルを記憶し、第2の記憶装置よりもデータの入出力の速度が早い第1の記憶装置が、論理式判定情報を記憶する。第1の記憶装置は、例えば、主記憶装置であり、第2の記憶装置は、例えば、補助記憶装置である。図1は、本発明の一実施形態に係るDB管理装置の構成の一例を示す。DB管理装置1は、検索クエリを受信し、その検索クエリに記述されている検索式論理式に適合するデータをDB11内のテーブルから検索し、検索の結果例えば、該当したレコードの数を表す情報、該当したレコードが有する情報を出力する。検索クエリは、外部の装置から入力される。外部の装置は、入力装置図示せずであっても良いし、記憶メディアであっても良いが、本実施形態では、DB管理装置1と通信する通信端末以下、端末3である。DB管理装置1は、計算機であり、CPU4、メモリ5、機器インタフェース以下I/Fという6、及び通信I/F7を備えている。それらの構成要素がバス20を介して互いに接続されている。以下、各構成要素について説明する。CPUCentralProcessingUnit4は、メモリ5又は記憶装置2に保持されているコンピュータプログラム以下プログラムというを実行する。例えば、CPU4は、DBMS10を実行して、計算機をDB管理装置1として実現する。DBMS10の詳細説明は、後述する。なお、以下の説明では、プログラム具体的には、例えば、DBMS又はそれが有する機能を主語として処理を説明する場合があるが、プログラムは、プロセッサ例えばCPU4によって実行されることで、定められた処理を、適宜に記憶資源例えばメモリ5、I/F6及び/又はI/7を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、DB管理装置1が行う処理としても良い。また、プロセッサは、CPU4の他に、CPU4が行う処理の一部又は全部を行うハードウェア回路を含んでも良い。プログラムは、プログラムソースか各計算機にインストールされて良い。プログラムソースは、例えば、プログラム配布サーバ、又は、計算機が読み取り可能な記憶メディアで良い。メモリ5は、主記憶装置の一例であり、例えば、揮発性のメモリである。故に、メモリ5に保持されているプログラム及びデータは、そのメモリへの電力供給が絶たれると消去される。メモリ5は、通常、記憶装置2よりも高速にデータを入出力できる。メモリ5は、例えば、DRAMDynamicRandomAccessMemoryである。記憶装置2は、補助記憶装置の一例であり、例えば、不揮発性の記憶装置である。故に、記憶装置2に保持されているデータは、その記憶装置2への電力供給が絶たれても消去されない。記憶装置2は、通常、メモリ45比較して記憶容量が大きい。したがって、データサイズの大きいDB11は、通常、記憶装置2に保持される。DB11は、テーブルT1と、テーブルT1が有する複数のカラムにそれぞれ対応した複数のインデクス100と、検索クエリに記述されている複数の条件式にそれぞれ対応した複数のレコードIDリスト601とを含む。記憶装置2は、HDD又はフラッシュメモリ等の外付け式のメディアドライブでも良いし、複数のメディアドライブを有するRAID記憶システム例えばディスクアレイ装置でも良い。なお、図1に示す記憶装置2は、DB管理装置1の外部に配置されているが、これに限られない。例えば、記憶装置2は、DB管理装置1の内部に配置されてもよい。また、記憶装置2は複数配置されてもよい。また、例えば、リスト601はDB11に含まれなくても良い。機器I/F6は、DB管理装置1と記憶装置2を接続するためのI/Fである。DB管理装置1は、機器I/F6を介して、記憶装置2にデータを入出力できる。機器I/F6は、例えば、SerialATAポート、PCIExpressポート、SCSIポート、又はUSBポート等で良い。機器I/F6は複数備えられてもよい。通信I/F7は、DB管理装置1を外部の通信機器と通信するためのI/Fである。DB管理装置1は、通信I/F7を介して、例えば通信ネットワークに接続されている1又は複数の端末3と通信できる。通信I/F7は、例えばLANLocalAreaNetworkポート等で良い。通信I/Fは複数備えられてもよい。端末3は、DB管理装置1に検索クエリを送信し、DB管理装置1から検索結果を得る情報処理装置である。端末3は、例えば、パーソナルコンピュータ、或いは携帯電話機等で良い。図2は、DBMS10の機能ブロックの一例を示す。DBMS10は、検索クエリ解析部21と、条件式処理部22と、論理式処理部23と、検索結果生成部24と、ソート処理部28とを備える各機能ブロックが行う処理は後に説明する。また、DBMS10は、論理式判定テーブル26をメモリ5上に作成し、且つ、条件式適合情報管理部25及び論理式適合情報管理部27としての領域をメモリ5上に確保する。DB11は、前述したように、テーブルT1と、複数のインデクス100と、複数のレコードIDリスト601とを含む。図3Aは、DB11が保持するテーブルT1の一例を示す。なお、図3を含む幾つかの図では、同種の要素に付された参照符号は、親符号と子符号との組合せで構成されているが、以下の説明では、同種の要素を特に区別しない場合には、親符号のみを使用することにする。テーブルT1は、複数のカラム110を有する複数のレコード101から構成される。レコード101は、レコードIDカラム110a、C1カラム110b、C2カラム110c、及びC3カラム110dの値を有する。ここで、レコードIDカラム110aの値は、レコードを一意に識別可能なIDidentificationである。以下、レコードIDカラム110aの値をレコードID値という。C1カラム110bの値をC1値という。他も同様とする。図3Bは、インデクス100の一例を示す。複数のカラムC1~C3にそれぞれ対応する複数の複数のインデクス100a~100cがある。インデクス100は、複数のエントリで構成されている。インデクス100例えば100aのエントリには、そのインデクス100に対応するカラムの値例えば、C1の値として、8と、その値が登録されているレコードテーブルT1内のレコードのレコードID例えば、210とが登録されている。図4は、検索クエリの一例を示す。検索クエリ200は、DB11から所望のデータを抽出するための検索式論理式が記述された問合せであり、例えば、SQLで記述される。図4に示す検索クエリ200は、条件式201a~201cの組合せである論理式202に適合するレコードをテーブルT1100から選択する、ことを意味する。検索クエリ200には、論理式202が記述されており、論理式202は、通常、複数の条件式201の組合せである。条件式201は、例えば、算術演算子、関係演算子及び関数のうちの少なくとも1つを含んで良い。論理式202は、例えば、論理演算子及び関数のうちの少なくとも一方を含んで良い。DB管理装置1が、端末3から検索クエリを受信し、DMBS10が、その検索クエリを解析する。具体的には、例えば、検索クエリ解析部21は、検索クエリ200を解析して、条件式201aC1>10、条件式201bC2<5、条件式201cC3≧50を抽出する。そして、検索クエリ解析部21は、抽出した条件式201a、201b及び201cに対して、それぞれの条件式を一意に識別可能な条件式ID211aX1、211bX2及び211cX3を付与する。さらに、検索クエリ解析部21は、検索クエリ200を解析して、論理式202X1ANDX2ORX3を抽出する。以上の処理により、検索クエリ解析部21は、条件式201と論理式202を抽出する。検索クエリ解析部21は、条件式201に否定NOTの論理演算子を有する場合、その否定の論理演算子を展開した条件式に置換する。例えば、条件式がNOTC1>10であった場合、NOTを展開した条件式C≦10に置換する。これにより、後述する論理式判定テーブル26を用いた検索が可能となる。条件式処理部22は、検索クエリ200で指定されたテーブルT1に対応するインデクス100から、条件式201に適合するレコードID値を抽出し、条件式ID211とレコードID値とをセットにした条件式適合情報301を生成する。なお、条件式適合情報301に含まれる情報はこれに限られない。例えば、条件式適合情報301にインデクス100の識別情報又はレコード101の更新日などが含まれてもよい。図5は、条件式処理部22の処理概要の一例を示す。以下、図5を用いて、条件式適合情報301の生成について説明する。例えば、条件式処理部22は、C1値がC1>10であるレコード101b,101c,101e,101fを抽出し、各レコードのレコードID値2、3、5、6を抽出する。そして、条件式処理部21は、例えばレコードID値2に対して、条件式201aに対応する条件式ID211aのX1と抽出したレコードID値2とをセットにした条件式適合情報301を生成する。そして、条件式判定部21は、生成した条件式適合情報301を条件式適合情報管理部25に出力する。条件式判定部21は、他の条件式201b及び201cについても同様に条件式適合情報301を生成し、条件式適合情報管理部25に出力する。条件式適合情報25については後述する。また、検索クエリ解析部21は、抽出した条件式201に基づいて、論理式判定テーブル26をメモリ5上に生成する。すなわち、検索クエリ解析部21は、メモリ5上に論理式判定テーブル26を生成するためのメモリ領域を確保する。このとき、検索クエリ解析部21は、論理式判定テーブル26にエントリ可能なレコードの最大数を算出し、その算出した値をレコード最大数とする。レコード最大数は、メモリサイズ例えば、メモリ5の全域又は所定領域のサイズと抽出した条件式201の数によって決定される。例えば、所定のメモリサイズにおいて、抽出した条件式201の数が少なければ、論理式判定テーブル26のカラム410の数が少なくなるので、メモリ5の空き容量はその分大きく、故に、レコード最大数は多くなる。逆に、所定のメモリサイズにおいて、抽出した条件式201の数が多ければ、論理式判定テーブル26のカラム410の数が多くなるので、メモリ5の空き容量はその分小さく、故に、レコード最大数は少なくなる。条件式処理部21は、条件式201に適合するレコードIDの抽出を全て完了したとき、条件式処理の完了を示す条件式完了情報を生成し、条件式適合情報管理部25に出力する。条件式完了情報は、例えば、自己の条件式IDレコードIDの抽出が全て完了した条件式201のIDと完了を示す文字列とを含んだ情報であってもよい。条件式処理部21は、条件式201ごとに独立したプロセスすなわち、マルチタスクが実行されてもよい。例えば、図5に示す条件式201の数は3つなので、独立した3つの条件式処理部21のプロセスが実行されてもよい。条件式適合情報管理部25は、例えば、FIFOFirst-in,First-out形式で情報が入出力される領域例えばバッファもしくはキューであり、メモリ5上に構成される。条件式適合情報管理部25には、条件式処理部21から出力された条件式適合情報301がバッファリングされる。条件式処理部21が独立したプロセスで実行される場合、それぞれの条件式処理部21から出力される条件式適合情報301は、1つの条件式適合情報管理部25にバッファリングされる。なお、条件式適合情報管理部25は、条件式適合情報301がバッファリングされた際、その旨を論理式処理部23に通知するようにしてもよい。論理式処理部23は、条件式適合情報301に基づいて、論理式判定テーブル26の条件式IDカラム410b~410dの値を変更する。また、論理式処理部23は、論理式判定テーブル26の各レコード401について、条件式IDカラム410b~410dの値を論理式202に代入して論理演算し、その結果を論理演算結果カラム410eに登録する。図6は、論理式判定テーブル26の一例を示す。論理式判定テーブル26は、レコードIDカラム410aと、条件式IDカラム410b~410dと、論理演算結果カラム410eを有する複数のレコード401から構成される。なお、論理式判定テーブル26は、これ以外のカラム410を有してもよい。例えば、検索の高速化のために、レコードID値から算出したハッシュ値を有するカラム410を、論理式判定テーブル26に追加してもよい。論理式判定テーブル26が有する情報は、必ずしもテーブル形式で格納されなくても良い。論理式処理部23は、条件式適合情報管理部25から条件式適合情報301を取得して、その情報301から条件式ID例えばX1とレコードID値例えば2を抽出する。そして、論理式処理部23は、論理式判定テーブル26から、レコードIDカラム410aにおいて、抽出したレコードID値例えば2を有するレコード401bを検索する。そして、論理式判定部23は、見つかったレコード401bにおいて、上記抽出した条件式ID例えばX1のカラム410の値を偽から真に変更する。なお、レコードIDカラム410aからレコードID値を発見できなかった場合、論理式処理部23は、論理式判定テーブル26に新規エントリを追加する、もしくは、記憶装置2に条件式適合情報301を保持させてソート処理部28に検索を実行させる。この処理については後述する。論理式判定部23は、同一のレコードIDのレコード例えば401bにおける条件式ID:X1カラム410bと、条件式ID:X2カラム410cと、条件式ID:X3カラム410dの値を論理式202に代入して論理演算をする。例えば、レコード401bであれば、真AND真OR偽の論理演算が実行され、故に、この論理演算結果は真となる。論理式処理部23は、論理演算結果例えば真の値を、同一のレコードIDのレコード例えば401bにおける論理演算結果カラム410eに登録する。論理式処理部23は、論理演算結果値が真のレコード401のレコードID値を含んだ論理式適合情報302を論理式適合情報管理部27に出力する。論理式処理部23は、論理演算の結果、全ての条件式IDカラム410b~410dの値が真となったレコードを論理式判定テーブル26から削除するようにしてもよい。これにより、論理判定テーブル26に現存するレコードの数が減少するため、論理判定テーブル26に新規エントリ可能なレコードの数が増加する。すなわち、レコード最大数と現存するレコード数との差分である新規エントリ可能なレコード数が増加する。これにより、より多くのレコードをメモリ上で処理することができるため、検索処理に要する時間を短縮できる。なお、全ての条件式IDカラム410b~410dについて真という値が登録されたレコードは、そのレコードに全ての条件式IDカラム410b~410dについて真という値が登録されたタイミングで、削除されて良いし、定期的に、そのようなレコードの有無がチェックされ、そのようなレコードが検出されたタイミングで、検出されたレコードが削除されて良い。論理式処理部23は、全ての条件式処理部22から条件完了情報を取得したとき、条件式適合情報301を論理式判定テーブル26に反映する処理が完了したと判断する。そして、論理式処理部23は、自己の処理が全て完了したとき、論理式処理部23の処理の完了を示す論理完了情報を論理式適合情報管理部27に出力する。この処理については後述する。論理式適合情報管理部27は、例えば、FIFO形式で情報が入出力される領域例えばバッファもしくはキューであり、メモリ上に構成される。論理式適合情報管理部27には、論理式処理部23から出力される論理式適合情報302がバッファリングされる。論理式適合情報302には、論理演算結果410eの値が真のレコード401のレコードID値が含まれる。なお、論理式適合情報管理部27は、論理式適合情報302がバッファリングされた際、その旨を検索結果生成部24に通知するようにしてもよい。検索結果生成部24は、論理式適合情報管理部27から論理式適合情報302を取得し、その論理式適合情報302に含まれるレコードID値に基づき、テーブルT1からそのレコードID値を有するレコードを抽出する。図7Aは、検索結果生成部24の処理概要の一例を示す。検索結果生成部24は、論理式適合情報管理部27から、論理式適合情報302を1つ取得し、そのレコードID値を有するレコードをテーブルT1から抽出する。検索結果生成部24は、テーブルT1から抽出したレコード正確には、テーブルT1のレコードから抽出した情報を検索結果テーブル500に登録する。例えば、図7Aにおいて、検索結果生成部24は、論理式適合情報管理部27から、レコードID値2を有する論理式適合情報302を取得する。そして、検索結果生成部24は、テーブルT1から、レコードID値2を有するレコード101bを抽出する。そして、検索結果生成部24は、抽出したレコード101bを検索結果テーブル500に登録するレコード501a。他の論理式適合情報302に対しても同様の処理を行う。以上の処理により、検索結果生成部24は、検索結果テーブル500を生成する。なお、条件式適合情報管理部25から出力された全ての条件式適合情報301が、論理式判定テーブル26に直ちに反映されるとは限らない。例えば、条件式判定部21は、条件式適合情報管理部25から取得された条件式適合情報301が有するレコードID値に対応したレコードを論理式判定テーブル26に追加する必要があるが、論理式判定テーブル26を構成するレコード数が既に所定数例えばレコード最大数に達している場合、論理式判定テーブル26に新たにレコードを追加しない。その場合、条件式判定部21は、条件式適合情報301が有する条件式ID値に対応したレコードIDリスト601に、その情報301が有するレコードID値を登録する。図7Bは、条件式201a~201cにそれぞれ対応するレコードIDリスト601a~601cを示す。レコードIDリスト601は、1以上のエントリで構成されている。エントリには、レコードID値が登録される。検索結果生成部24は、レコードIDリスト601a~601cの少なくとも1つにレコードID値が登録されている場合、ソート処理部28に、レコードIDリスト601a~601cを用いて、論理演算処理をさせる。具体的には、例えば、ソート処理部28は、リスト601a~601cに同一のレコードID値があるか否かを基に、論理式202に従う論理演算処理をさせる。その際、例えば、リスト601aからレコードID値が取得された場合、論理式202において、条件式201aについて真が採用される。一方、そのレコードID値と同一のレコードID値が取得されなかったリストについては、論理式202において、そのリストに対応する条件式について偽が採用される。そして、検索結果生成部24は、ソート処理部28によって特定されたレコードID値論理式202に該当するレコードID値に適合するレコード値を有するレコードをテーブルT1から抽出する。検索結果生成部24は、テーブルT1から抽出したレコード正確には、インデクス100のレコードから抽出した情報を含んだ検索結果テーブル500を生成する。ソート処理部28からの出力データは、論理式適合情報302で良い。ただし、ソート処理部28がどのような処理によって論理式適合情報302を生成するかは問わない。ソート処理部28は、例えば、図14を用いて説明した従来の方式に基づいて論理式適合情報302を生成してもよいし、本実施形態で説明する論理式処理部23と同様の方式に基づいて論理式適合情報302を生成してもよい。図8は、検索クエリ解析部21の処理フローの一例を示す。検索クエリ解析部21は、端末3から入力された検索クエリ200を取得するS11。検索クエリ解析部21は、取得した検索クエリ200を解析して、条件式201及び論理式202を抽出するS12。検索クエリ解析部21は、抽出した条件式201及び論理式202に基づいて、メモリ上に論理式判定テーブル26を生成するS13。検索クエリ解析部21は、生成した論理式判定テーブル26に基づいてエントリ最大数を算出するS14。検索クエリ解析部21は、条件式処理部22を起動しS15、検索クエリ解析処理を終了する。なお、条件式201が複数存在する場合、条件式201ごとに条件式処理部22の処理プロセスを起動してもよい。以上の処理により、検索クエリ200から条件式201と論理式202が抽出され、条件式処理部22が起動される。図9は、条件式処理部22の処理フローの一例を示す。条件式処理部22は、条件式201の判定対象とするエントリ以下対象エントリというを、その条件式201に対応するインデクス100から1つ抽出し、その対象エントリから、条件式201の対象となるカラム値以下対象カラム値というを取得するS21。条件式処理部22は、対象カラム値が条件式201に適合するか否かを判定するS22。対象カラム値が条件式201に適合する場合S22:YES、条件式処理部22は、条件式201に対応する条件式ID211と、対象エントリのレコードID値とをセットにした条件式適合情報301を生成し、その情報301を条件式適合情報管理部25に出力するS23。そして、ステップS24の処理に進む。一方、対象カラム値が条件式201に適合しない場合S22:NO、条件式判定部22はステップS24の処理に進む。条件式判定部22は、インデクス100に未判定のレコード101が存在するか否かを判定するS24。未判定のレコード101が存在する場合S24:YES、条件式判定部22は、未判定のレコード101の1つを次の対象エントリ101としてS25、ステップS21の処理に戻る。一方、未判定のレコード101が存在しない場合S24:NO、条件式判定部22は、条件完了情報を条件式適合情報管理部25に出力しS26、条件式処理を終了する。以上の処理により、インデクス100から、条件式201に適合するレコードID値を含む条件式適合情報301が条件式適合情報管理部25にバッファリングされる。図10は、論理式処理部23の処理フローの一例を示す。論理式処理部23は、条件式適合情報管理部25から条件式適合情報301を取得するS31。なお、取得された条件式適合情報301は、条件式適合情報管理部25から削除される。論理式処理部23は、取得した条件式適合情報301が条件完了情報であるか否かを判定するS32。情報301が条件完了情報である場合S32:YES、論理式処理部23は、完了判定処理を実行するS33。完了判定処理については後述する。一方、情報301が条件完了情報でない場合S32:NO、論理式処理部23は、条件式適合情報301から条件式ID211とレコードID値を抽出するS34。論理式処理部23は、レコードID値が論理式判定テーブル26のレコードIDカラム410aに存在するか否かを判定するS35。レコードID値がレコードIDカラム410aに存在しない場合S35:NO、論理式処理部23は、新規エントリ生成処理を実行するS36。新規エントリ生成処理については後述する。レコードID値がレコードIDカラム410aに存在する場合S35:YES、論理式処理部23は、そのレコードID値を有するレコード401において、条件式IDカラム410の値を真に変更するS37。論理式処理部23は、各条件式IDカラムの値を論理式202に代入して論理演算し、その結果を論理演算結果カラム410eに登録するS38。論理演算結果が偽から真に変更になった場合S39:YES、論理式処理部23は、その論理演算結果が真のレコード401のレコードID値を含む論理式適合情報302を生成し、その情報302を論理式適合情報管理部27に出力するS40。そして、ステップS41の処理に進む。論理演算結果が偽のまま変化がない,もしくは真のまま変化がない場合S39:NO、論理式処理部23は、そのままステップS41の処理に進む。論理式処理部23は、そのレコード401において、条件式IDカラムの値が全て真であるか否かを判定するS41。条件式IDカラムの値のいずれかが真でない場合S41:NO、論理式処理部23は、ステップS31の処理に戻る。条件式IDカラムの値が全て真である場合S41:YES、論理式処理部23は、そのままステップS42の処理に進む。論理式処理部23は、そのレコード401を論理式判定テーブル26から削除しS42、ステップS31の処理に戻る。図11は、論理式処理部23における完了判定図10のS33の処理フローの一例を示す。論理式処理部23は、条件完了情報に含まれる条件式ID211に対応する完了フラグをオンにするS51。なお、完了フラグは、条件完了情報を取得するまではオフになっている。論理式処理部23は、各条件式ID211に対応する完了フラグが全てオンとなったか否かを判定するS52。すなわち、条件式211ごとに条件式処理部23のプロセスが存在すると仮定したとき、論理式処理部23は、全てのプロセスが処理を完了したか否かを判定する。完了フラグのいずれかがオフである場合S52:NO、論理式処理部23は、図10のステップS31の処理に戻る。一方、完了フラグが全てオンである場合S52:YES、論理式処理部23は、ステップS53に進む。すなわち、論理式処理部23は、全ての条件式適合情報301を論理式判定テーブル26に反映したと判断し、論理式判定処理を終了する。図12は、論理式処理部23における新規エントリ生成図10のS36の処理フローの一例を示す。論理式処理部23は、条件式適合情報管理部25から取得したレコードID値が、記憶装置格納リスト図示せずに存在するか否かを判定するS61。記憶装置格納リストには、これまで記憶装置2内のレコードIDリスト601に登録されたレコードID値が保持される。これにより、同一レコードID値を有する条件式適合情報301が、論理式判定テーブル26と記憶装置2に分散されてしまうことを防ぐ。なお、記憶装置格納リストは、例えば、メモリ5に保持される。レコードID値が記憶装置格納リストに存在しない場合S61:NO、論理式処理部23は、論理式判定テーブル26に新規レコード401を生成可能であるか否かを判定するS62。すなわち、論理式処理部23は、論理式判定テーブル26に現存するレコード数以下現存レコード数というがレコード最大数よりも小さいか否かを判定する。新規レコード401を生成可能である場合S62:YES、すなわち、現存レコード数がレコード最大数よりも小さい場合、論理式処理部23は、取得したレコードID値を有する新規レコード401を生成し、論理式判定テーブル26にエントリするS63。その際、論理式処理部23は、現存レコード数カウント値を1増やす。また、論理式処理部23は、このときエントリされた新規レコード401の条件IDカラム410の値は全て偽とする。そして、論理式処理部23は、図10のステップS37へ進む。一方、取得したレコードID値が記憶装置格納リストに存在する場合S61:YES、もしくは新規レコード401を生成不可能である場合S62:NO、論理式処理部23は、記憶装置2に条件適合情報301を保持させるべくステップS64に進む。論理式処理部23は、抽出したレコードID値をレコードIDリストに登録するS64。その際、論理式処理部23は、そのレコードID値が未だ記憶装置格納リストに登録されていないレコードID値であれば、そのレコードID値を記憶装置格納リストに登録する。そして、論理式処理部23は、条件式適合情報301を記憶装置2に格納しS65、図10のステップS31の処理に戻る。以上の処理により、条件式処理部22にて抽出された条件式適合情報301を論理式判定テーブル26に反映させることができる。また、論理式判定テーブル26に反映しきれない条件式適合情報301については、記憶装置2に格納することができる。図13は、検索結果生成部24の処理フローの一例を示す。検索結果生成部24は、論理式適合情報管理部27から、論理式適合情報302を取得するS71。なお、取得した論理式適合情報302は論理式適合情報管理部27から削除される。検索結果生成部27は、取得した論理式適合情報302が論理完了情報であるか否かを判定するS72。論理完了情報を取得していない場合S72:NO、検索結果生成部24は、論理式適合情報302からレコードID値を抽出するS73。そして、検索結果生成部27は、テーブルT1から、そのレコードID値を有するレコードを抽出し、検索結果テーブル500に登録するS74。そして、ステップS71の処理に戻る。一方、論理完了情報を取得した場合S72:YES、検索結果生成部24は、論理式適合情報管理部27にバッファリングされている論理式適合情報302についての処理は全て完了したと判断する。そして、検索結果生成部24は、記憶装置に保持されている論理式適合情報302の処理に遷移すべくステップS75に進む。検索結果生成部24は、ソート処理部28に対して、記憶装置11に格納された条件式適合情報301の論理演算処理を要求するS75。検索結果生成部24は、記憶装置論理処理部28から、論理式202に適合する論理式適合情報302のリストを取得するS76。なお、この論理式適合情報302も上記と同様、論理式202に適合するレコードのレコードID値を含む。検索結果生成部24は、論理式適合情報302から、レコードID値を抽出するS77。検索結果生成部27は、テーブルT1から、そのレコードID値を有するレコードを抽出し、検索結果テーブル500に追加登録しS78、検索結果生成処理を終了する。すなわち、ステップS74によって生成された検索結果テーブル500に、記憶装置論理処理部28によって抽出されたレコードを追加登録する。以上の処理により、検索結果テーブル500には、論理式処理部23によって抽出されたレコードと、ソート処理部28によって抽出されたレコードの両方を有する検索結果テーブル500が生成される。すなわち、検索結果テーブル500には、検索クエリ200に適合するレコードを有する検索結果テーブル500が生成される。なお、検索結果テーブル500に登録されたレコードに対応するレコードは、論理式判定テーブル26から削除される。この場合、DBMS10例えば論理式処理部23又は検索結果生成部27は、論理式判定テーブル26の現存レコード数カウント値を1減らす。以上、上述した実施形態によれば、レコードID値毎に、条件式201毎の真/偽が、論理式判定テーブル26に登録される。そして、同一のレコードIDについて、複数の条件式201にそれぞれ対応する複数の真/偽と、論理式202とを基に、そのレコードIDが、検索クエリ201に適合するレコードのIDであるか否かが判断される。これにより、記憶装置2にアクセスすることによるソートが不要になるので、検索に要する時間を短縮することが期待できる。また、上述した実施形態によれば、論理式判定テーブル26を構成するレコードの数が所定数に既に達している場合にのみ、レコードID値が、論理式判定テーブル26に書かれず、記憶装置2に格納される。記憶装置2に格納されたレコードID値についてのみ、記憶装置2に対する入出力を必要とした検索処理が行われる。つまり、記憶装置2にアクセスすることによるソートを最小限にすることが期待できる。言い換えれば、本実施形態では、必ずしも、記憶装置2にアクセスすることによるソートを必要とした検索処理が行われるとは限られない。現存レコード数が所定数に達しても、論理式判定テーブル26にレコードを追加する必要がなければ、レコードID値が記憶装置2に登録されない。上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態に限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。例えば、インデクス100は無くても良い。その場合、条件式201に適合するか否かの判断に使用されるカラム値は、テーブルT1から取得されて良い。また、複数の条件式201にそれぞれ対応した複数のレコードIDリスト601は、1つにマージされていても良い。"