问题标签 [ydn-db-fulltext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
470 浏览

javascript - 如何通过匹配基于包含“-”字符的部分字符串的索引来选择记录?

我使用 YDN-DB(IndexedDB 之上的抽象)作为本地数据库。我有一个名为“conversations”的对象存储,在该存储中,有一个名为“participants”的索引,其中有一个包含对话中不同用户的 id 的字符串。例如:

示例对话#1:

示例对话#2:

为了尝试对索引执行部分匹配,我尝试使用 ydn-db-fulltext 作为解决方案。全文目录如下所示:

我看到目录已生成,但在进行完全匹配时似乎存在问题。例如,如果我只使用参与者索引中的部分键进行查询,我会从目录中取回一个主键:

但是,当使用任何超过“-”的值时,搜索请求会返回 0 个结果:

这是有道理的,在阅读文档时,'-' 和 '*' 是保留字符,它们分别删除短语并匹配前缀:

查询格式是自由文本,其中隐式和/或/接近逻辑运算符适用于每个令牌。使用双引号进行完全匹配,使用 - 从结果中减去,使用 * 进行前缀搜索。

我尝试将双引号放在单引号内,仅使用双引号,并用反斜杠转义所有“-”字符,但这些似乎都不起作用。

所以问题是如何在字符串包含“-”字符的索引中执行匹配?

0 投票
1 回答
67 浏览

ydn-db - 如何从 JSON 文件数据索引子对象属性并在 YDN DB 中编写搜索查询

我浏览了很多网站,但找不到任何解决方案。这是我的问题。我想索引 YDN DB 中的子属性和父属性。

我的示例 JSON 数据:

YDB 模式和存储:

当我尝试索引无法过滤的子对象(城市)属性时,我正在尝试通过索引父属性和子属性将 JSON 数据存储到索引数据库中。

提前致谢