Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
FULLTEXT [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
FULLTEXT


 
Sumsl
25-01-2002, 17:21 
 
Hiho
folgendes problem:
ich hab eine spalte (t_long) an einen Fulltext-Index gebunden.
wenn ich dann ein query:

select * from glossar match(t_long) against('Webdesign');

ausführe bringt er mir das gewünschte resultat, wenn nur EIN datensatz das suchwort enthält. aber nicht, wenn es in MEHREREN datensätzen vorkommt. dann nämlich gar keine.
wie bring ich es fertig, daß der mir alle datensätze auswirft, wo das suchwort drinsteht ?

wär für schnelle hilfe dankbar.
mfg
Nico

 
iQD
27-01-2002, 06:13 
 
Hi!

It is, really, the desired behavior - a natural language query should not return every second row in 1GB table.

A word that matches half of rows in a table is less likely to locate relevant documents. In fact, it will most likely find plenty of irrelevant documents. We all know this happens far too often when we are trying to find something on the Internet with a search engine. It is with this reasoning that such rows have been assigned a low semantical value in this particular dataset.


Die Lösung ist eine "FULLTEXT IN BOOLEAN MODE"-Suche, welche aber erst ab mySQL Version 4.01 implementiert wurde.

select * from glossar where match(t_long) against('+Webdesign' in boolean mode);

Grüsse


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:58 Uhr.