一、语言列表
语言名称 | 代码 |
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、准备工作
这里准备一些数据
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、创建索引
db.books.createIndex(
{description: 'text'},
{default_language: 'es'}
);
上面创建了description字段的文本索引并指定了default_language为es;
3、查询索引
db.books.getIndexes();
结果如下:
可以看到default_language设置成了es
三、指定语言字段
创建文本索引时指定语言的字段默认是language,但可以在创建索引的时候指定语言字段
1、准备工作
这里准备一些数据
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、创建索引
db.books.createIndex(
{description: 'text'},
{language_override: 'yuyan'}
);
上面创建了description字段的文本索引并指定了language_override为yuyan字段,在索引创建时会根据yuyan字段的值作为语言对文本创建索引
3、查询索引
db.books.getIndexes();
结果如下:
可以看到language_override设置成了yuyan字段