0

我正在尝试使用%iFind.Index.Basic制作通用文本搜索功能。

根据iFind 搜索工具文档,必须在类中创建 iFind 索引,如下所示:

Class Aviation.TestSQLSrch Extends %Persistent[...] 
{
...
Index NarrBasicIdx On (Narrative) As %iFind.Index.Basic(INDEXOPTION=0,
     LANGUAGE="en",LOWER=1);
...
}

但这仅适用于一个类中的一个字段。

如果要普遍使用 iFind 搜索功能,那么需要索引大量的字符串字段,这样既消耗内存又不实用。

无论如何都可以根据需要动态进行 iFind 索引而不需要更改类,并且仍然可以使用##Class(%ResultSet)进行查询?

在文档中,它还提到了 Indexing a JSON Object,但没有给出示例。这是我应该更多探索的地方吗?

4

1 回答 1

0

使用 iFind,您首先需要创建一个索引并在执行任何查询之前构建它(这里没有动态,只要它是基于索引的)。

如果您想要更通用的东西,也许您应该使用其他一些文本分析选项作为NLP(自然语言处理)

于 2020-05-15T11:28:26.350 回答