Dino Geek essaye de t'aider

Comment utiliser l'opérateur de recherche de texte dans MongoDB ?


L’opérateur de recherche de texte en MongoDB peut être utilisé pour effectuer une recherche de texte sur le contenu d’une collection. Pour utiliser la recherche de texte, vous devez d’abord créer un index de texte sur le champ sur lequel vous voulez effectuer la recherche.

Voici comment vous pouvez le faire :

1. Créez un index de texte :

Utilisez la commande `createIndex` pour créer un index de texte. Par exemple, si vous avez une collection `posts` et que vous voulez faire une recherche de texte sur le champ `title`, vous pouvez le faire de la façon suivante : \`\`\` db.posts.createIndex( { title: “text” } ) \`\`\` Vous pouvez également créer un index de texte sur plusieurs champs : \`\`\` db.posts.createIndex( { title: “text”, description: “text” } ) \`\`\`

1. Utilisez l’opérateur de recherche de texte :

Une fois que vous avez créé l’index de texte, vous pouvez utiliser l’opérateur `$text` pour effectuer une recherche de texte. Par exemple : \`\`\` db.posts.find( { $text: { $search: “mongoDB” } } ) \`\`\` Cette commande retournera tous les documents de la collection `posts` où le champ `title` contient le mot “mongoDB”. Vous pouvez également rechercher plusieurs mots en les séparant par un espace. Par exemple, pour rechercher “mongoDB tutorial”, vous pouvez le faire comme ceci : \`\`\` db.posts.find( { $text: { $search: “mongoDB tutorial” } } ) \`\`\`

Remarque :

- La recherche de texte en MongoDB est sensible à la casse et ne prend pas en compte les caractères diacritiques.

- Les index de texte prennent en charge les recherches de texte dans plusieurs langues. Vous pouvez spécifier une langue lors de la création de l’index ou lors de l’utilisation de l’opérateur de recherche de texte.
- Pour exclure un mot de la recherche, vous pouvez le précéder de “-” (moins).

Par exemple: \`\`\` db.posts.find( { $text: { $search: “mongoDB -tutorial” } } ) \`\`\` Cela retournera tous les documents qui contiennent le mot “mongoDB” mais pas le mot “tutorial”.

- Pour la recherche de phrases exactes, vous devez le mettre entre guillemets. Par exemple:

\`\`\` db.posts.find( { $text: { $search: ““mongoDB tutorial”“ } } ) \`\`\` Il retournera tous les documents qui contiennent la phrase exacte “mongoDB tutorial”.

Générez simplement des articles pour optimiser votre SEO
Générez simplement des articles pour optimiser votre SEO





DinoGeek propose des articles simples sur des technologies complexes

Vous souhaitez être cité dans cet article ? Rien de plus simple, contactez-nous à dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nom de Domaine | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Mentions Légales / Conditions Générales d'Utilisation