we need a little help for understand the behavior of fuzzy search in the next case:
where CONTAINS(first_name,'fuzzy('Le Coq')',1) > 0
where CONTAINS(first_name,'fuzzy('Lecoq')',1) > 0
The phonetic is the same in the both case, so the results must be almost the same, and both must contains 'Le Coq' and 'Lecoq' .
The response that we have is totally different and especially not contains the both :'Le Coq' and 'Lecoq'. The space is interpreted different in this case? Where is the problem?
I work in Oracle 10.2
Thanks in advance,
Edited by: user9184479 on Dec 20, 2011 2:46 AM
Fuzzy won't allow you to match a phrase with a single word. The fuzzy operator works at the word level, which means "fuzzy(Le Coq)" will search for a phrase consisting of a fuzzy match of "Le" followed by a fuzzy match of "Coq". Assuming "Le" is not a stopword, this can never match "Lecoq".
If "Le" is a stopword, which it would be if you're working in a French environment, then things get a bit fuzzier (sorry).
In this case I think "le" would get removed, it would then just depend on whether fuzzy of "Coq" matches "Lecoq" which it almost certainly doesn't (because the first characters are very important in a fuzzy match).
Name search in 11.2 is the only operator which deals with segmentation, and can match fragments with or without spaces between them. As you're not working in 11.2, your only choice is to pre-process the data to remove spaces.