質問編集履歴

1

見やすいように水平線を追加

2017/05/19 00:31

投稿

tesopgmh
tesopgmh

スコア146

title CHANGED
File without changes
body CHANGED
@@ -9,6 +9,7 @@
9
9
  「原宿」というキーワードでも引っかかるようになりますが
10
10
  逆に「フガ原宿店」という完全一致で検索して、「完全一致しないものは出さない」にはどうしたらよいのでしょうか?
11
11
 
12
+ ---
12
13
  1.最後に完全な文字列を足して検索の際に形態素解析をせずに検索する
13
14
 
14
15
  「フガ,原宿,店」+「フガ原宿店」=「フガ,原宿,店,フガ原宿店」
@@ -19,6 +20,8 @@
19
20
 
20
21
  しかし、これでは「フガ原宿店」ではうまくいくが、短い語句「原宿」だと、ないにも関わらずヒットしてしまう
21
22
 
23
+ ---
24
+
22
25
  2.形態素解析後のデータのカンマをエスケープして検索
23
26
 
24
27
  「フガ,原宿,店」を「フガ,原宿,店」で検索してカンマをエスケープすることで完全一致させる
@@ -30,12 +33,16 @@
30
33
  そもそもエスケープ出来ないし、方法があるとしても
31
34
  これも先ほどと同様「フガ原宿店」ではうまくいくが、短い語句「原宿」だと、ないにも関わらずヒットしてしまう
32
35
 
36
+ ---
37
+
33
38
  3.完全一致用のカラムを作る
34
39
  「hoge」の横に形態素解析しない「hoge_kanzen」カラムを作ってそこにインデックスを張って完全一致(完全一致しないものは出さない)の場合はそこを検索する
35
40
 
36
41
  カラム二倍に増えるし、なんかスマートじゃない。。。
37
42
 
43
+ ---
38
44
 
45
+
39
46
  「完全一致検索」なんて割とポピュラーな機能なのにみんなどうしてるんでしょうか?
40
47
  やはり「前後部分一致検索用」と「完全一致用」とカラムを二つ作るしかないんでしょうか?
41
48