Options for smarter filtering/search?

Options for smarter filtering/search?

  

What are some options for a smarter filtering/search?  By this I mean if in one of the text fields there is e-beam if someone types into search ebeam it does not hit.  We want to make this a bit more accepting so that people can find what they are searching for.

The basic is a character insertion. You have 

SELECT TABLE.*

FROM TABLE

WHERE TABLE.description like "%"+@query+"%"

Maybe you add

UNION ALL

SELECT TABLE.*

FROM TABLE

WHERE TABLE.description like "%"+@newquery+"%"

and @newquery was modified to include "_" between characters.


After that, maybe some position switching algorithm to change characters? Later, some character replacement for symbols that are not present? It all adds up to the complexity so, unless you have a cache of results standing by, it can be very resource consuming.

Hi

Instead of the UNION ALL I prefer TABLE.description like "%"+@query+"%" or TABLE.description like "%"+@newquery+"%"

Or you can use a farfecth solution http://www.kodyaz.com/articles/fuzzy-string-matching-using-levenshtein-distance-sql-server.aspx create a action on sql with Levenshtein formula and use it on a advance query on where.

problem: "e-beam" will be distance one from "ebeam" but "abeam" will also be distance on from "ebeam"

Regards,

Marcelo