我正在开发一个从前端接收字符串数组的应用程序。对于mongoDB数据库中的每个文档,我都有一个关键字数组。从前端接收的字符串可能是关键字的子字符串。现在,我需要查询数据库,以便它返回包含所有关键字子字符串的所有文档。
Eg.假设
文档1的关键字数组:“变电站”、"220/60“、"kV”
文档1的关键字数组:“变电站”、"220“、"kV”、“德里”
文档1的关键字数组:“变电站”、"kV“、”孟买“
从前端接收到的数组:"substa","220“
我需要数据库返回前两个文档,因为接收到的数组的两个元素都是两个文档中关键字的子字符串。但第三份文件不应返回,因为它不包含"220“。我还没能为这个开发一个查询。
发布于 2020-04-07 03:51:51
假设您对每个关键字(本质上是相同的查询)都有查询,则可以将它们与$and组合起来:
{'$and' => [<query for substa>, <query for 220>]}
此外,您还应该考虑全文搜索。
https://stackoverflow.com/questions/61072297
复制相似问题