Windows search ranking not return documents in expected order

Hi All,

I am working with classic ASP and the Windows search using the server object Search.CollatorDSO.

My SQL query is as follows, which seems to work without issues other than the order in which it is returning the document results are not in an order I would have expected. This may be down to my limited understanding of the ranking algorithm being used...

SELECT top 1000 System.FileName, System.Search.Rank FROM SystemIndex WHERE scope='file:C:\inetpub\wwwroot\www\Search' AND NOT scope='file:C:\inetpub\wwwroot\www\Search\ex' and FREETEXT('phrase') order by System.Search.Rank desc  

Open in new window

What is happening at the moment is that some documents are showing rank of 999, although the word count (when checked in adobe pdf reader) is showing documents are incorrectly ordered, ie the top rated document with rank 999 could have 50 instances of a word, yet a document with the same rank has 100 instances of that same word. But is placed lower in the results. I would have expected the results with the most word count be placed higher?

Could anyone provide insight into why this could occur?
Who is Participating?
Big MontyConnect With a Mentor Senior Web Developer / CEO of Commented:
you'd have to look in the SystemIndex table to see if there is any WordCount column. Remember, there is more to the Ranking than just a word count, there is how many times those words appear and how close together they appear, as well as many other factors.

you may want to have a look here for more info:
You are selecting by rank and sorting by rank:
    - order by System.Search.Rank
You likely would fare better ordering by 'word count'
rito1Author Commented:
Thanks SunBow this does sound a better option in our case... Would you know the SQL syntax for order by word count?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.