Fuzzy Search
-
A fuzzy search retrieves documents containing terms that closely match a given term instead of exact matches, assisting in finding relevant results when the search term is misspelled or has minor variations.
-
Fuzzy search is available only via DocumentQuery or RQL.
-
Use the
Fuzzy
method when querying withWhereEquals
. -
In this page:
Fuzzy search example
List<Company> companies = session.Advanced
.DocumentQuery<Company>()
// Query with a term that is misspelled
.WhereEquals(x => x.Name, "Ernts Hnadel")
// Call 'Fuzzy'
// Pass the required similarity, a decimal param between 0.0 and 1.0
.Fuzzy(0.5m)
.ToList();
// Running the above query on the Northwind sample data returns document: companies/20-A
// which contains "Ernst Handel" in its Name field.
List<Company> companies = await asyncSession.Advanced
.AsyncDocumentQuery<Company>()
// Query with a term that is misspelled
.WhereEquals(x => x.Name, "Ernts Hnadel")
// Call 'Fuzzy'
// Pass the required similarity, a decimal param between 0.0 and 1.0
.Fuzzy(0.5m)
.ToListAsync();
// Running the above query on the Northwind sample data returns document: companies/20-A
// which contains "Ernst Handel" in its Name field.
from "Companies"
where fuzzy(Name = "Ernts Hnadel", 0.5)
Syntax
IDocumentQuery<T> Fuzzy(decimal fuzzy);
Parameter | Type | Description |
---|---|---|
fuzzy | decimal |
A value between 0.0 and 1.0 .With a value closer to 1.0 , terms with a higher similarity will be matched. |