MongoDB staat slechts één tekstindex per verzameling toe.
Maar u kunt een tekstindex gebruiken die meerdere velden omspant:
db.collection.ensureIndex( {
description: "text",
title: "text"
} );
Op die manier krijgt u resultaten wanneer de zin waarnaar u zoekt, in een van beide wordt gevonden. Als dit niet is wat je wilt, zoals wanneer je twee zoekopdrachten hebt die elk resultaten opleveren van een van de velden, maar niet van de andere, heb je twee opties.
- gebruik een tekstindex met meerdere velden, maar negeer de resultaten die uit het verkeerde veld op de applicatielaag komen.
- extraheer een van de twee velden naar een andere verzameling. De documenten in die verzameling kunnen ofwel volledige kopieën, geredigeerde kopieën bevatten of alleen het veld dat u indexeert en de
_id
van het originele document.