Zoeken in fulltext

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Koen Bressers

Koen Bressers

26/07/2006 09:04:00
Quote Anchor link
Hoe kan ik zo snel en makkelijk mogelijk een fulltext (db) afzoeken naar een woord of een deel daarvan, zonder gebruik te maken van WHERE text = '%woord%'?

Bvd,
Koen.
 
PHP hulp

PHP hulp

29/03/2024 07:51:07
 
Onbekend Onbekend

Onbekend Onbekend

26/07/2006 09:07:00
Quote Anchor link
LIKE Misschien??
 
Koen Bressers

Koen Bressers

26/07/2006 09:10:00
Quote Anchor link
WHERE text LIKE '%woord%

Moest dat zijn.
 
Koen Bressers

Koen Bressers

26/07/2006 09:10:00
Quote Anchor link
Dat wil ik dus ook niet gebruiken.
Gewijzigd op 01/01/1970 01:00:00 door Koen Bressers
 
Onbekend Onbekend

Onbekend Onbekend

26/07/2006 09:12:00
Quote Anchor link
Waarom? Voor de gein:D

gebruiken*
Gewijzigd op 01/01/1970 01:00:00 door Onbekend Onbekend
 
Ponzi

Ponzi

26/07/2006 09:12:00
Quote Anchor link
Je kan ook eerst alle records uit je database halen en dan kijken of je string in één van de records zit, maar dat is natuurlijk een hoop meer werk voor je servertje ;) .
 
Onbekend Onbekend

Onbekend Onbekend

26/07/2006 09:13:00
Quote Anchor link
Laat hem lekker;)
 
Koen Bressers

Koen Bressers

26/07/2006 09:14:00
Quote Anchor link
Omdat een fulltext search in een volle database nogal lang kan duren en daar heb ik niet zo veel zin in. Dus ik wil een manier waarbij het sneller gaat en minder vermogen van de database vergt.
 
Willem Jan Z

Willem Jan Z

26/07/2006 09:15:00
Quote Anchor link
FullText search tutorial

En ik wil graag aan de anderen vragen een beetje research te doen voordat je met dingen gaat gooien waar je niks aan hebt. Wat zou het nut van fulltext search zijn, terwijl je zonder fulltext search ook LIKE kan gebruiken... Heel aardig dat jullie 'proberen te helpen', maar op die manier schiet het naar mijn idee niet op.
 
Jan Koehoorn

Jan Koehoorn

26/07/2006 09:15:00
Quote Anchor link
Eerst maak je in phpMyAdmin een FULLTEXT index aan op 1 of meer velden. En dan je query:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
SELECT
    veld1,
    MATCH (veld1) AGAINST ('" . $search . "') AS score
FROM
    tabel
WHERE
    MATCH (veld1) AGAINST ('" . $search . "')";

let op: bij een FULLTEXT search
• moeten alle velden die in de FULLTEXT index zitten opgenoemd worden tussen de haakjes bij MATCH
• kun je niet zoeken op strings korter dan 4 letters
• worden records met teveel zoekresultaten niet getoond

Zie ook het MySQL manual
 
Jan Koehoorn

Jan Koehoorn

26/07/2006 09:17:00
Quote Anchor link
Willem-Jan:
FullText search tutorial

En ik wil graag aan de anderen vragen een beetje research te doen voordat je met dingen gaat gooien waar je niks aan hebt. Wat zou het nut van fulltext search zijn, terwijl je zonder fulltext search ook LIKE kan gebruiken... Heel aardig dat jullie 'proberen te helpen', maar op die manier schiet het naar mijn idee niet op.

Het voordeel van FULLTEXT boven LIKE, is dat FULLTEXT automatisch sorteert op relevantie. Je hoeft dus geen ORDER BY te gebruiken, dat regelt MySQL voor je.
 
Robert Deiman

Robert Deiman

26/07/2006 09:37:00
Quote Anchor link
@Jan,

Moet je in jouw voorbeeld dan ook sorteren op "score"? het viel me op dat je zelf een soort van score laat genereren zo, of sorteerd die hem automatisch al goed?
 
Onbekend Onbekend

Onbekend Onbekend

26/07/2006 10:55:00
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.