FT Index Avoiding Common Noise Words

  • We have a Full Text index which works great but we have some data which doesn't play well with the Noise Words and I am wondering if there is a way that I can avoid the use of the Noise Words for a specific query without modifying the Noise Word file.

    Using Adventureworks as an example, we would have data in the DocumentSummary column of the Production.Document table that would include "Node A" in the text string. Due to the fact that "A" is part of the noise word list (and should be) the FT Index will not pull the proper record set and we are forced to use a LIKE statement.

    select * from AdventureWorks2008.Production.Document

    where contains(DocumentSummary, 'Node A')

    The above example would not return the proper records.

    select * from AdventureWorks2008.Production.Document

    where DocumentSummary like '%Node A%'

    While this one does.

    As things stand right now the LIKE performs fine BUT the data is increasing and we want to be able to use the FT Index search capabilities.

    Any thoughts, comments, suggestions would be greatly appreciated.

    David

    @SQLTentmaker

    “He is no fool who gives what he cannot keep to gain that which he cannot lose” - Jim Elliot

  • I had a similar problem a few months ago and wanted a solution that did not involve editing the noise-word list. What we ended up doing was to create a procedure that went though and used the REPLACE function to strip out the noise words from the inputs, it was not the most elegant solution but it worked well enough..

    I would also be interested in any other ideas out there.

  • Thanks Steve! We had kind of considered that but determined it wouldn't work right in our situation. Hopefully we can hear of some other solutions!

    David

    @SQLTentmaker

    “He is no fool who gives what he cannot keep to gain that which he cannot lose” - Jim Elliot

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply