[pgsql-jp: 29202] Re: 任意の項目に対して、空白で区切ってAND 検索をするには

Kazumasa Gotoh kgotoh @ cic-kk.co.jp
2003年 2月 25日 (火) 09:12:49 JST


新規に投稿する場合は、他の投稿への Reply を用いないでください。
あなたの投稿は [pgsql-jp: 29200] への返信となっています。

Subject: だけ直してもだめです。

From: turup <turup @ mint.freemail.ne.jp>
Date: Tue, 25 Feb 2003 08:06:06 +0900

> そこで、項目に対して、AND検索をしたいのですが、希望するのは空白を認識して
> AND検索を行うものです。
    (略)
> やはり、入力された文字列に対して、空白がある場合とない場合の処理をして
> 空白がある場合は、空白ごとに文字列を変数にいれて、処理をしないといけないので
> しょうか?。

何が言いたいのか意味がわからなくてしばらく悩みましたが、これはこういう
意味でしょうか?

あるカラムにデータとしてデータが以下のように入っている。

     'AAA BBB CCC DDD EEE FFF GGG HHH'
     'CCC DDD EEE FFF GGG HHH III JJJ'
     'III JJJ KKK LLL MMM NNN OOO PPP'
     'AAA BBB XXX YYY ZZZ CCC DDD EEE'

ここで BBB と CCC を含む行を選択したい。

これがあなたのしたい事でしょうか? つまり、テキストデータから
指定された複数の単語を含むデータの選択を行おうとしているのですか?

それでしたら、あなたが書いたような方法でしか検索を行うことは
できません。
どうしてなのか。という部分に関しては「ネットで検索」などせずに、
SQL の解説をちゃんと行っている書籍などを読んで勉強してください。
そうすれば、理由がわかるはずです。

思うに、「空白を認識して…」というような書き方をしてしまうのは、
「自分の当面の目的」と「目的達成のために行わなければならない事」
の区別がついていないのではないでしょうか?

おそらく、google や Yahoo での検索のように、ユーザ入力エリアから
空白により区切られた複数の単語を入力させ、それらを含んだデータの
選択を行うようなプログラムを書こうとしているのだと思いますが、
最初は何を言おうとしているのか全然わかりませんでした。

質問する際には、自分だけが理解できる抽象的な書き方ではなく、
多くの人が理解できる具体的な書き方をするようにして下さい。

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
(株) セントラル情報センター
                             後藤和政    kgotoh @ cic-kk.co.jp



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