Kom ihåg mig?

fulltextsökning i två kolumner samtidigt

 
Ämnesverktyg Visningsalternativ
Oläst 2006-10-13, 16:52 #1
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
radioaktivitet radioaktivitet är inte uppkopplad
Flitig postare
 
Reg.datum: Jun 2006
Inlägg: 336
Jag har ett litet problem. Jag har en stor tabell P med produktinfo. P innehåller tre kolumner. ID, NAMN och TILLVERKARE. Jag vill nu kunna söka fritextsöka i både NAMN och TILLVERKARE samtidigt. Idag har jag ett fritextindex för NAMN och ett för TILLVERKARE.

Så här ser en typisk fråga ut när man söker på namnet "namn" och tillverkaren "tillverkare"

Kod:
SELECT ID, NAMN, TILLVERKARE, MATCH(NAMN) AGAINST ("namn") + MATCH (TILLVERKARE) AGAINST ("tillverkare") AS RELEVANCE FROM P WHERE MATCH(NAMN) AGAINST ("namn") AND MATCH (TILLVERKARE) AGAINST ("tillverkare") ORDER BY RELEVANCE DESC
Jag har nästan en miljon rader i tabell P.

Problemet med denna fråga är att den tar väldigt lång tid att exekvera. Särskilt om man söker på namn och tillverkare som har flera ord i sig.

Kan någon tipsa mig om hur jag kan effektivisera min fråga?

Jag har funderat på att göra ett gemensamt index för NAMN och TILLVERKARE. Men nackdelen med den lösningen är att om jag söker på NAMN "abcd" så kan jag få träffar på TILLVERKARE som heter "abcd". Och det blir ju fel... :-)

Jag kör mysql 4.0.25
radioaktivitet är inte uppkopplad   Svara med citatSvara med citat
 


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 05:04.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017