【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、准备工作

这里准备一些数据

javascript 复制代码
db.books.drop();

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

2、创建索引

javascript 复制代码
db.books.createIndex(
    {description: 'text'}, 
    {default_language: 'es'}
);

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

3、查询索引

javascript 复制代码
db.books.getIndexes();

结果如下:

可以看到default_language设置成了es

三、指定语言字段

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

1、准备工作

这里准备一些数据

javascript 复制代码
db.books.drop();

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

2、创建索引

javascript 复制代码
db.books.createIndex(
    {description: 'text'}, 
    {language_override: 'yuyan'}
);

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

3、查询索引

javascript 复制代码
db.books.getIndexes();

结果如下:

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

相关推荐
云计算磊哥@13 小时前
运维开发宝典026-MySQL02数据库表操作
运维·数据库·运维开发
小二·13 小时前
Redis 内存溢出(OOM)排查与恢复实战
数据库·redis·bootstrap
pqk6V6Vep13 小时前
Redis 分布式锁进阶第一篇讲解
数据库·redis·分布式
giaz14n9X13 小时前
Redis 分布式锁进阶第六十一篇
数据库·redis·分布式
是一个Bug13 小时前
MongoDB:像搭积木一样存数据
数据库·mongodb
ULIi096kr13 小时前
MySQL解决Too many connections报错:连接数爆满排查、优化与永久解决方案
数据库·mysql·adb
SL-staff14 小时前
(一)数据源配置 —— JVS-Rules规则引擎 V2.5 操作说明介绍
数据库·jar·规则引擎·数据源·jvs-rules·api 接口·jvs低代码
摇滚侠15 小时前
Spring 零基础入门到进阶 基于 XML 管理 Bean 14-28
xml·数据库·spring
Metaphor69215 小时前
使用 Python 给 PDF 设置背景色或背景图
数据库·python·pdf
Gauss松鼠会15 小时前
【GaussDB】GaussDB重要通信参数汇总
服务器·网络·数据库·sql·性能优化·gaussdb·经验总结