login  Naam:   Wachtwoord: 
Registreer je!
 Forum

index keys bij full-text search

Offline mebcat - 16/01/2011 17:15
Avatar van mebcatNieuw lid Hoi

ik gebruik een full-text search voor mijn mysql database.
Is het mogelijk om de index keys ergens te halen uit mysql? De bedoeling is dat ik een lijst krijg met de keywords en hun score. Ik weet niet of dit eigenlijk wel kan want ik vind niet dadelijk iets bij google .

alvast bedankt

7 antwoorden

Gesponsorde links
Offline Martijn2008 - 16/01/2011 18:09 (laatste wijziging 16/01/2011 18:10)
Avatar van Martijn2008 PHP beginner Hoe is de huidige opzet van je database/tabel? Wat is je invoer en wat verwacht je precies als resultaat? Heb je toevallig al een SQL-query geschreven?
Offline mebcat - 16/01/2011 19:40 (laatste wijziging 16/01/2011 19:42)
Avatar van mebcat Nieuw lid Ik gebruik cakephp dus een query opgeven gaat niet dadelijk. Ik heb trouwens nog geen query geschreven omdat ik niet weet hoe ik de data uit mysql kan halen omdat mysql deze zelf verwerkt.

Mijn tabelstructuur (vereenvoudigd)
id int(11) (primary index)
titel varchar(255)
content mediumtext
fulltext index op title en content field

Mijn fulltext search werkt prima en ik kan de relevantie score ook bekijken.

Ik wil de woorden die mysql heeft geindexeerd of heeft opgeslagen kunnen bekijken. Ik wil zo bekijken welke keywords/tags het meest voorkomen in mijn tabel. Uiteindelijke bedoeling is om zo'n wolk te kunnen maken met keywords/tags waarbij het meest voorkomende het grootst is afgeprint. Maar ik weet dus niet dadelijk of dit sowieso kan.

Ik hoop dat dit al wat duidelijker is  
Offline Martijn2008 - 16/01/2011 19:53
Avatar van Martijn2008 PHP beginner Je kunt daarvoor toch een aparte tabel maken?

Stel dat een gebruiker gaat zoeken op zoekwoord "HTML".

Dan zou je onderstaande procedure uit kunnen voeren

1.) Check in de database of er resultaat is
2.) Indien resultaat -> sla de zoekwoorden op in de database?
3.) Lees de zoekwoorden uit de database en stop plaats deze in de cloud?

Bedoel je vereenvoudigd dat?
Offline mebcat - 16/01/2011 20:03
Avatar van mebcat Nieuw lid Dag Martijn2008

Dat zou ik inderdaad kunnen doen. Het is een kleine omweg.
Maar het is dus niet mogelijk om rechtstreeks de keywords op te halen die mysql heeft aangemaakt?
Offline Martijn2008 - 16/01/2011 20:22 (laatste wijziging 16/01/2011 20:23)
Avatar van Martijn2008 PHP beginner Volgens mij niet, weet niet precies hoe jij je database hebt ingericht? Heb je bijvoorbeeld scripts(denk aan triggers e.d.) op bepaalde tabbellen staan? Ik denk dat de beste methode gezien je skills op dit moment de meest simpele weg is.
Offline Martijn - 16/01/2011 20:51
Avatar van Martijn Crew PHP is dat niet gewoon en tabel keywords aanmaken, kijken of het getypte woord voorkomt -> updaten, else inserten. Zie t probleem niet?

En als je wilt dat t gebeurd als er resultaten zijn, dan doe je gewoon een check of je resultaat krijgt, if so-> doe het bovenstaande
Offline mebcat - 17/01/2011 10:41 (laatste wijziging 17/01/2011 10:42)
Avatar van mebcat Nieuw lid Ik heb geen tabel keywords moeten aanmaken. bij een fulltext search doet mysql dit voor mij.

Dit gebruik ik bijvoorbeeld uit de tutorials

Citaat:
SELECT *, MATCH(`quote`) AGAINST('aap noot mies') AS `relevantie` FROM `voorbeeld` WHERE MATCH(`quote`) AGAINST('aap noot mies');
sitemasters link naar fulltext search

Hopelijk begrijpen jullie nu wat ik aan het doen ben?
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.185s