このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
mroonga:10.7:tutorial [2020/11/10 17:27] y2sunlight [クエリ展開] |
mroonga:10.7:tutorial [2020/11/10 17:56] (現在) y2sunlight [クエリ展開] |
||
|---|---|---|---|
| 行 452: | 行 452: | ||
| Mroongaのクエリ展開機能は、同義語や関連語を展開して検索する場合に利用できます。 | Mroongaのクエリ展開機能は、同義語や関連語を展開して検索する場合に利用できます。 | ||
| + | |||
| + | まずは、以下のような関連語テーブルを準備します。以下の例では、検索対象周辺の都道府県を持つ関連語テーブルを例として使用しますが、同義語テーブルなどが一般的かもしれません。 | ||
| <code sql> | <code sql> | ||
| 行 464: | 行 466: | ||
| INSERT INTO area VALUES (' | INSERT INTO area VALUES (' | ||
| </ | </ | ||
| + | |||
| + | このようなテーブルを準備することによって、「東京」、「神奈川」、「埼玉」の何れが検索語として指定されても「東京」がヒットするようになります。尚、この例のように、'' | ||
| + | |||
| + | === mroonga_query_expand関数 === | ||
| + | |||
| + | 次のユーザ定義関数を '' | ||
| + | |||
| + | < | ||
| + | mroonga_query_expand(table, | ||
| + | </ | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | 例 | ||
| <code sql> | <code sql> | ||
| - | SELECT * FROM diaries WHERE MATCH(content) AGAINST(mroonga_query_expand(" | + | SELECT * FROM diaries |
| + | | ||
| + | -- または | ||
| + | SELECT * FROM diaries | ||
| + | WHERE MATCH(content) AGAINST(mroonga_query_expand(" | ||
| </ | </ | ||
| + | |||
| + | 上の2つは以下の同じ検索結果を表示します。 | ||
| <code sql> | <code sql> | ||
| + | 明日の東京都の天気は晴れでしょう。 | ||
| </ | </ | ||