foo
と/bar
の両方で行を検索できます。col1
col2
SELECT col1, col2
FROM some_table
WHERE MATCH (col1,col2)
AGAINST ('+foo +bar' IN BOOLEAN MODE);
しかし、正確なフレーズ"foo.bar" (途中にピリオドがある)を検索したいとします。Boolean Full-Text Searches のドキュメントページでは、演算子であるフルストップについて言及されていないため、次を使用できると思いました。
AGAINST ('+foo.bar' IN BOOLEAN MODE);
ただし、これは次と同じ結果を返します。
AGAINST ('+foo.couldBeAnything' IN BOOLEAN MODE);
AGAINST ('+foo' IN BOOLEAN MODE);
AGAINST ('+foo.*' IN BOOLEAN MODE); #Note you would expect this to look for instances of foo. followed by something, rather than just the same as foo
.
これが期待どおりに機能しないのはなぜですか? どうすれば for と照合できfoo.bar
ますか?