[pgsql-jp: 41614] Re: 日本語全文検索textsearch-jaのwindows8.1対応に付いて

Tomoaki Sato sato @ sraoss.co.jp
2014年 3月 31日 (月) 11:49:56 JST


佐藤です。

From: "mituhiro inaba" <mit @ inaba.ws>
Date: Thu, 27 Mar 2014 20:16:38 +0900

> いろいろありがとうございます。
> 
> 仰る通り環境変数のミスでした、
> mecabとtextsearch-jaのパスをシステム環境変数に加えてOKでした、
> 助かりました。
> 
> そして基本的に動作しますが、
> 今度はpsqlに流すテストのselect文の中のwhere句のto_tsquery関数の検索語に、
> 日本語を使うと
> 「NOTICE:  テキスト検索問い合わせはストップワードのみを含む、
> あるいは、字句要素を含みません。無視されます」
> とのエラーで0行が返って来ます。
> to_tsquery関数の検索対象カラムはtsvector型のカラムで、そこに存在してい
> る検索語を使っています、
> 数字、アルファベットの検索語では正常に動作します。
> 
> またto_tsvector 関数も日本語はtsvector 型に変換しません。

ちゃんと調べきれていませんが、textsearch_ja と MeCab のバージョンが関係
あるようです。とりあえず textsearch_ja 9.0.0 と MeCab 0.98 の組み合わせ
なら問題ないようです。

=# select to_tsquery('japanese', 'すもももももももものうち');
         to_tsquery
----------------------------
 'すもも' & 'もも' & 'もも'
(1 行)

=# select to_tsvector('japanese', 'すもももももももものうち');
      to_tsvector
-----------------------
 'すもも':1 'もも':2,3
(1 行)

> 重ねていろいろすいません、
> お気付きの点ありましたらよろしくお願いいたします、
> 私も自分なりに日本語エンコードに起因するかなど考えてみます。


----
Tomoaki Sato <sato @ sraoss.co.jp>
SRA OSS, Inc. Japan


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