• 【MongoDB】索引 – 文本索引(指定语言)


    一、语言列表

    语言名称

    代码

    danish

    da

    dutch

    nl

    english

    en

    finnish

    fi

    french

    fr

    german

    de

    hungarian

    hu

    italian

    it

    norwegian

    nb

    portuguese

    pt

    romanian

    ro

    russian

    ru

    spanish

    es

    swedish

    sv

    turkish

    tr

    二、指定默认语言

    创建文本索引时默认使用的语言是english,但可以在创建索引的时候指定默认语言

    1、准备工作

    这里准备一些数据

    1. db.books.drop();
    2. db.books.insert({_id: 1, name: "Java", yuyan: "es", description: "java 入门图书" });
    3. db.books.insert({_id: 2, name: "C++", yuyan: "en", description: "C++ 入门图书" });
    4. db.books.insert({_id: 3, name: "Java设计模式", yuyan: "es", description: "java 设计模式" });

    2、创建索引

    1. db.books.createIndex(
    2. {description: 'text'},
    3. {default_language: 'es'}
    4. );

    上面创建了description字段的文本索引并指定了default_language为es;

    3、查询索引

    db.books.getIndexes();

    结果如下:

    可以看到default_language设置成了es

    三、指定语言字段

    创建文本索引时指定语言的字段默认是language,但可以在创建索引的时候指定语言字段

    1、准备工作

    这里准备一些数据

    1. db.books.drop();
    2. db.books.insert({_id: 1, name: "Java", yuyan: "es", description: "java 入门图书" });
    3. db.books.insert({_id: 2, name: "C++", yuyan: "en", description: "C++ 入门图书" });
    4. db.books.insert({_id: 3, name: "Java设计模式", yuyan: "es", description: "java 设计模式" });

    2、创建索引

    1. db.books.createIndex(
    2. {description: 'text'},
    3. {language_override: 'yuyan'}
    4. );

    上面创建了description字段的文本索引并指定了language_override为yuyan字段,在索引创建时会根据yuyan字段的值作为语言对文本创建索引

    3、查询索引

    db.books.getIndexes();

    结果如下:

    可以看到language_override设置成了yuyan字段

  • 相关阅读:
    HashSet和LinkedHashSet
    代码审计-3 文件包含漏洞
    [java入门到精通] 19 网络编程,设计模式
    HackTheBox-Starting Point--Tier 2---Markup
    8.cookie的获取
    Maven上传本地离线依赖
    用RNN & CNN进行情感分析 - PyTorch
    20221130如何修改OBS录屏的存储路径?
    XSS高级 svg 复现一个循环问题以及两个循环问题
    Vue自定义指令
  • 原文地址:https://blog.csdn.net/m1729339749/article/details/134295351