Brilliant!  I had no idea that something like this was built into MySQL.
This will work very nicely.  Thank you.
-Kevin


----- Original Message -----
From: "Matt Schroebel" <[EMAIL PROTECTED]>
To: "Kevin Stone" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Tuesday, November 05, 2002 1:01 PM
Subject: RE: [PHP] Information Retrieval.. help


> Why don't you use full text search, which creates a score?
>
> Two tutorials:
> http://www.mysql.com/doc/en/Fulltext_Search.html
> http://www.zend.com/zend/tut/tutorial-ferrara1.php
>
> The match words need to be at least 3 characters in length or you'll get
> no results.
>
> > -----Original Message-----
> > From: Kevin Stone [mailto:kevin@;helpelf.com]
> > Sent: Tuesday, November 05, 2002 2:44 PM
> > To: [EMAIL PROTECTED]
> > Subject: [PHP] Information Retrieval.. help
> >
> >
> > Hey list!  I have written several simple search scripts to
> > retrieve basic data.. that is to say I wasn't worried about
> > the actual relevancy of what I was retrieving.  Now I need to
> > write a search script that retrieves information based on the
> > search terms in order of relevancy.  It doesn't have to
> > feature boolean operations but it does have to be fast and
> > flexible.  This is what I have so far.
> >
> > The database contains:
> > ID   Description
> > --   ------------
> > 1   jade gold ring
> > 2   grandmas golden ring with leaves
> > 3   silver and gold diamond bracelet
> >
> > The user enters the search string:
> > "ring gold leaves"
> >
> > I split the string into words and query them separately:
> > "SELECT ID FROM jewlry WHERE description LIKE \"%ring%\""
> > returns 1,2
> > "SELECT ID FROM jewlry WHERE description LIKE \"%gold%\""
> > returns 1,2,3
> > "SELECT ID FROM jewlry WHERE description LIKE \"%leaves%\""  returns 2
> >
> > Then I combine the results into one array and use
> > arraycountvalues() to eliminate redundencies and count the
> > number of occurances of each row.  The number of occurances
> > of a row should be equal to its relevancy so I sort the array
> > by value:
> > array (
> > 2 => 3,
> > 1 => 2,
> > 3 => 1);
> >
> > Hopefully that wasn't too hard to follow.  I as examine my
> > code I get the distinct impression that this is an
> > extraordinarily Primative method.  :)  If so do you have any
> > suggestions for improving it or can you please point me to
> > resources (tutorials, books, websites, etc..) that would help
> > me develope more a sophisticated technique?
> >
> > Much appreciated!
> > Kevin Stone
> > [EMAIL PROTECTED]
> >
> >
>
>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to