【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字段

相关推荐
愚公移码12 分钟前
蓝凌EKP产品:Hibernate 中 SessionFactory、Session 与事务的关系
java·数据库·hibernate·蓝凌
透明的玻璃杯15 分钟前
sqlite数据库连接池
jvm·数据库·sqlite
VX:Fegn089524 分钟前
计算机毕业设计|基于springboot + vue非遗传承文化管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
bleach-32 分钟前
buuctf系列解题思路祥讲--[极客大挑战 2019]HardSQL1——sql报错注入
数据库·sql·安全·web安全·网络安全
少年攻城狮40 分钟前
OceanBase系列---【oracle模式的存在即更新,不存在即新增的merge into用法】
数据库·oracle·oceanbase
波波仔8644 分钟前
clickhouse简介
数据库·clickhouse
不穿格子的程序员1 小时前
Redis篇2——Redis深度剖析:从SetNX到Redisson,分布式锁的进化之路
数据库·redis·分布式锁·redisson·setnx·redlock
曾富贵1 小时前
【Prisma】NestJS 集成与核心链路解析
数据库·后端
编程大师哥1 小时前
SQL 调优 全面解析
数据库·sql·oracle
Dwzun1 小时前
基于SpringBoot+Vue的农产品销售系统【附源码+文档+部署视频+讲解)
数据库·vue.js·spring boot·后端·毕业设计