mysql:5960
From: KAWAJI Shinya <KAWAJI Shinya <kawaji@xxxxxxxxxx>>
Date: Mon, 19 Aug 2002 01:31:24 +0900
Subject: [mysql 05960] Re: MySQL での全文検索について
かわじ、です。 > SELECT * FROM BBS WHERE MATCH(body,name) AGAINST('TATSUYA'); > と実行すると、 > Can't find FULLTEXT index matching the column list > このように帰ってきます。 > > bodyだけnameだけを指定したときには問題なく動作をするのですが、 > なぜ複数個指定した際にこのようなエラーになってしまうのでしょうか? > > エラーを見る限り、項目名が FULLTEXT のインデックにマッチしないということなのでしょうが、 > body,name,subject という項目名を以下のように、 FULLTEXT にしています。 > > FULLTEXT KEY name (name), > FULLTEXT KEY subject (subject), > FULLTEXT KEY body (body) > > 何が原因なのでしょうか、よろしくお願いします。 FULLTEXT KEY (body,name) というインデックスも加えられたらいいと思います。 mysql> create table a ( -> b text, -> c text, -> fulltext key b (b), -> fulltext key c (c) -> ); Query OK, 0 rows affected (0.00 sec) mysql> select * from a where match(b) against('foo'); Empty set (0.01 sec) mysql> select * from a where match(b,c) against('foo'); ERROR 1191: Can't find FULLTEXT index matching the column list mysql> drop table a; Query OK, 0 rows affected (0.01 sec) mysql> create table a ( -> b text, -> c text, -> fulltext key (b,c) -> ); Query OK, 0 rows affected (0.01 sec) mysql> select * from a where match(b) against('foo'); ERROR 1191: Can't find FULLTEXT index matching the column list mysql> select * from a where match(b,c) against('foo'); Empty set (0.00 sec) #掲示板処理ということで、ちょっと気になったので念のため。 ご存じだとは思いますが、Fulltext_Search はまだ日本語に対応していない はずです。対応法なども含めて以下のスレッドが参考になります。 http://www.mysql.gr.jp/mysqlml/msg.cgi?ml=mysql&id=5375 -- Shinya Kawaji
5959 2002-08-19 00:19 [TATSUYA <tatsuya@xxx] MySQL での全文検索について -> 5960 2002-08-19 01:31 ┗[KAWAJI Shinya <kawaj] 5961 2002-08-19 01:44 ┗[TATSUYA <tatsuya@xxx] 5964 2002-08-19 07:03 ┗[sin <panocon@xxxxxxx] 5966 2002-08-19 12:18 ┗[TATSUYA <tatsuya@xxx]