[HACKERS] text field ranking functions - Mailing list pgsql-hackers
| From | Brian Schaffner |
|---|---|
| Subject | [HACKERS] text field ranking functions |
| Date | |
| Msg-id | ff8a816da39f667bf862975119b58351 Whole thread Raw |
| List | pgsql-hackers |
- --=====================_867450482==_
Content-Type: text/plain; charset="us-ascii"
Someone mentioned to me that these might be usefull as a
permanent addition to the Postgres source. There are three functions
for tokenizing a string and matching it in a text field.
1) iscontained('token1 token2 token3', textfield) checks to see if text
field contains any of the tokens.
2) rank('token1 token2 token3', textfield) assigns a ranking number to the
record
depending on the number of matched tokens in the text field
3) wrank('token1 token2 token3', textfield) assigns a weighted ranking
number - weighting tokens by their order.
Hope these are useful...
- --=====================_867450482==_
Content-Type: application/octet-stream; name="pgrank.tar.gz";
x-mac-type="477A6970"; x-mac-creator="477A6970"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="pgrank.tar.gz"
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
uXvA/T+NWW6QAHgAAA==
- --=====================_867450482==_
Content-Type: text/plain; charset="us-ascii"
Brian Schaffner, Senior Programmer
Internet Tool & Die
- --=====================_867450482==_--
------------------------------
End of hackers-digest V1 #402
*****************************
pgsql-hackers by date: