我正在使用OrientDB 2.1.8社区和内置的Lucene索引。如何在手动索引中定义搜索期间要使用的字段?即以与文档中Working with Multiple Fields页面上描述的方式一起使用手动索引?
下面是一个简短的例子来说明我正在尝试做什么。
CREATE VERTEX CONTENT {"name": "squirrel"}
// rid = #9:2
CREATE VERTEX CONTENT {"name": "scrat", "description": "Scrat was an acorn-obsessed saber-toothed squirrel"}
// rid = #9:3
CREATE INDEX manual FULLTEXT ENGINE LUCENE STRING,STRING
INSERT INTO INDEX:manual (key,rid) VALUES ('squirrel', #9:2)
INSERT INTO INDEX:manual (key,rid) VALUES (['scrat', 'scrat was an acorn-obsessed saber-toothed squirrel'], #9:3)
现在,查询SELECT rid FROM INDEX:manual WHERE key LUCENE 'squirrel'
将同时返回#9:2
和#9:3
。
我应该如何更改密钥和/或INSERT INTO INDEX
命令的类型,以便能够定义我想要使用的字段?例如,SELECT rid FROM INDEX:manual WHERE key LUCENE 'name:squirrel'
之类的查询应仅返回#9:2
,而不是#9:3
。
有什么想法吗?