Hoi, ik heb hier een tijdje geleden ook al enkele vragen over gesteld. ik hou het hypothetisch en kort. Ik heb een gevulde database. ik wil een:

select * from bla where match ($fields) against ($vars)

hardtikke mooi natuurlijk die match queries. Enige kleine nadeeltje is dat woorden met minder dan 4 letters niet meegenomen in de zoekbewerking. Maar nou heb ik voor specifieke velden wel waarden die minder dan 4 letters hebben. Dus nou dacht ik dat alsvolgt op te lossen; ik zet voor de woorden die ik in de database zet een standaard string: "123_"
dus een waarde in de database wordt dan 123_waarde. Langer dan 4 letters en wordt nu geindexeerd zou je zeggen! Later kan ik natuurlijk 123_ eraf strippen als ik html wil uitspugen. Nu is de vraag... Is dat wel slim, wordt dat wel vaker gedaan misschien? En levert het strippen van 123_ niet flinke vertraging op (moet namelijk wel van elke waarde weer afgehaald worden)?

Ik hoop dat het een beetje te begrijpen valt, maar als iemand hier zijn gedachten over zou willen spreken, dan graag!
Dat lijkt mij niet slim, daar is de functie niet voor bedoeld en ik denk niet dat ie zo gewenste resultaten geeft. Ik zou een aparte query doen met LIKE als woorden kleiner zijn dan 4 karakters.
Nee, je gaat de data niet naar de klote helpen omdat je anders niet meer kunt zoeken met MATCH ... AGAINST.

Reageren