Naoya Murakami
visio****@gmail*****
2013年 12月 11日 (水) 01:38:02 JST
お世話になっております。村上です。 Mroonga3.10、Groonga.3.1.0で、Mroongaでベクターカラムを作ると、 Groongaのselectでは、うまく一致検索できません。 なお、SQLでは、一致検索できます。 前方一致検索ならGroongaのselectでも検索できます。 Qiitaやテストケースにある簡単なDDLで再現します。 http://qiita.com/groonga/items/f41cd8cfbe7bd158d5da <質問> Mroongaで作ったベクターカラムをGroongaのselectで 一致検索できないでしょうか? CREATE TABLE Tags ( name VARCHAR(64) PRIMARY KEY ) DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='default_tokenizer "TokenDelimit"'; CREATE TABLE Bugs ( id INT PRIMARY KEY AUTO_INCREMENT, tags TEXT COMMENT 'flags "COLUMN_VECTOR", type "Tags"', FULLTEXT INDEX(tags) ) DEFAULT CHARSET=utf8; INSERT INTO Bugs (tags) VALUES ("Linux MySQL groonga"); INSERT INTO Bugs (tags) VALUES ("mroonga"); INSERT INTO Bugs (tags) VALUES ("groonga mroonga"); mysql> SELECT * FROM Bugs WHERE MATCH(tags) AGAINST("mroonga" IN BOOLEAN MODE); +----+-----------------+ | id | tags | +----+-----------------+ | 2 | mroonga | | 3 | groonga mroonga | +----+-----------------+ 2 rows in set (0.01 sec) mysql> SELECT mroonga_command('select Bugs --query tags:mroonga'); +------------------------------------------------------------------------------------------------+ | mroonga_command('select Bugs --query tags:mroonga') | +------------------------------------------------------------------------------------------------+ | [[[1],[["_id","UInt32"],["_key","Int32"],["id","Int32"],["tags","Tags"]],[2,2,2,["mroonga"]]]] | +------------------------------------------------------------------------------------------------+ 1 row in set (0.01 sec) mysql> SELECT mroonga_command('select Bugs --query tags:mroonga*'); +------------------------------------------------------------------------------------------------------------------------------+ | mroonga_command('select Bugs --query tags:mroonga*') | +------------------------------------------------------------------------------------------------------------------------------+ | [[[2],[["_id","UInt32"],["_key","Int32"],["id","Int32"],["tags","Tags"]],[2,2,2,["mroonga"]],[3,3,3,["groonga","mroonga"]]]] | +------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.01 sec) 以上、よろしくお願いします。