Something confusing about FormsOf (Sql server Full-Text searching)

Posted by AspOnMyNet on Stack Overflow See other posts from Stack Overflow or by AspOnMyNet
Published on 2010-05-30T19:08:22Z Indexed on 2010/05/30 19:12 UTC
Read the original article Hit count: 258

Filed under:
|
|

hi

I'm using Sql Server 2008

1)

A given <simple_term> within a <generation_term> will not match both nouns and verbs.

If I understand the above text correctly, then query

SELECT * 
FROM someTable 
WHERE CONTAINS ( *, ' FORMSOF ( INFLECTIONAL, park ) ' ) 

should search for either nouns or verbs derived from the root word “park”, but not for both? Thus out of the two rows, one containing noun parks and other verb parking, the above query should return just one of the two rows? But as it turns out, query returns both rows, so are perhaps my assumptions a bit off or is the above quote wrong?!

2) From Msdn:

If freetext_string is enclosed in double quotation marks, a phrase match is instead performed; stemming and thesaurus are not performed.

According to the above quote the following query shouldn’t return rows containing strings surfing ( due to query not performing stemming ), surf ( due to query performing phrase matching and not individual word matching ) and surfing with suzy’s sister ( due to query not performing stemming and due to query performing phrase matching and not word matching ), but it does.

Thus, it appears that even when *freetext_string* is enclosed in double quotation marks, stemming is still preformed, while phrase matching is not:

SELECT * 
FROM someTable
WHERE FREETEXT( *, ' "surf sister" ' ) 

So is the above quote wrong or...?

thanx

© Stack Overflow or respective owner

Related posts about sql-server

Related posts about tsql