Hallo,
ich möchte Nutzern die Optionen anbieten, entweder col1 oder col2 oder beide zu durchsuchen. Ich habe also drei Fälle:
1. MATCH (col1
) AGAINST ('expr')
2. MATCH (col2
) AGAINST ('expr')
3. MATCH (col1
, col2
) AGAINST ('expr')
Wenn ich nun jeweils einen FULLTEXT-Index über col1 und col2 mache, dann funktioniert MATCH (col1
, col2
) AGAINST ('expr') nicht. Wenn ich aber nun einen einzigen FULLTEXT-Index über beide Spalten mache, dann funktioniert MATCH (col1
) AGAINST ('expr') und MATCH (col2
) AGAINST ('expr') nicht mehr.
Die Lösung des Problems sind nun ja drei FULLTEXT-Indizes:
1. FULLTEXT(col1
)
2. FULLTEXT(col2
)
3. FULLTEXT(col1
, col2
)
Meine Frage ist nun: Ist das so okay? Ich finde es... ein wenig komisch. Für mich sieht das nämlich irgendwie so aus, als ob da irgendwo Leistung verschenkt wird, weil irgendwie ist da ja etwas doppelt. Beide Spalten haben jetzt ja zweimal ein FULLTEXT-Index. Muss man das so machen oder gibt es da ein Trick, wie man das alles mit weniger Indizies erledigen kann?