[pgsql-jp: 38781] Re: 3種類の値を持つ6つの項目の検索方法

藤澤 qsecofr1 @ hotmail.com
2007年 9月 20日 (木) 17:34:21 JST


こうもとさんへ

んー、残念です。。。
6つの比較データが決まれば、たくさんありますが、検索対象となる
組み合わせが決まります。
たとえば、
    比較データ1 = 1   ⇒ 1,2   が ok
    比較データ2 = 2   ⇒ 1,2,3 が ok
    比較データ3 = 3   ⇒   2,3 が ok
    比較データ4 = 1   ⇒ 1,2   が ok
    比較データ5 = 2   ⇒ 1,2,3 が ok
    比較データ6 = 3   ⇒   2,3 が ok
であれば、2 * 3 * 2 * 2 * 3 * 2 = 144通りのOKパターンが
あります。

比較データの組み合わせ「3 * 3 * 3 * 3 * 3 * 3 = 729 通り」に
それぞれ対応する OKパターンの合計は、およそ、
140,000 件。
このOKパターンマスタを事前に用意しておけば、内部結合して検索
できて、なんて考えてましたが、すみません。
あまりメリット無さそうですね。


何か良い解決案が浮かんだら、またMLに入れます。
こうもとさん、失礼しました。


/藤澤



On Thu, 20 Sep 2007 16:59:44 +0900 (JST)
河本陽一 <komoto.yoichi @ kcc.co.jp> wrote:

> こうもとです。
> 
> 藤澤 さんの書いたこと:
> 
> > で、「比較データA」と一致しないものを条件としては?
> 
>  それを試してみると、インデックスが使われませんでした。
> 
> 
> > あるいは、動的にSQL文を作れるなら、下記のWHERE条件を
> > 「<>」 ではなく、「< 」か「> 」 を特定できるので、
> > それもありかと。。。
> 
>  それは、最初のメールの検索例の1番目と同じですよね。
> 
>  問い合わせ時のSQLは、動的に作成できます。
>  DBの構造もデータの持ち方も、制限なく変更できます。
>  別のアプローチで問い合わせれないかなと思っています。
> 
> ======================================================================
> 河本陽一(こうもとよういち)
> mailto:komoto.yoichi @ kcc.co.jp






pgsql-jp メーリングリストの案内