NodeJS 如何在时间序列集合中搜索文本?

6ljaweal  于 2024-01-07  发布在  Node.js
关注(0)|答案(2)|浏览(172)

我尝试使用条件{ $text: { $search: searchContent } }搜索文本。这需要文本索引。但是,text index is not supported by time series。我该怎么办?

2j4z5cfb

2j4z5cfb1#

尝试使用{"field": {"$regex": "value-to-search"}}作为您的查询,这是最接近文本搜索而不使用文本搜索,正如您提到的,它不支持,根据您提供的链接,它可能不会。

wwtsj6pe

wwtsj6pe2#

如果你知道你找到的字段,你可以使用$regex same @omercotkd suggest。在这里,我使用$where来搜索所有字段。

  1. db.collection.find({
  2. $expr: {
  3. $function: {
  4. body: function(all_field) {
  5. for (var field in all_field) {
  6. if (all_field[field] == searchContent) return true;
  7. }
  8. return false;
  9. },
  10. args: [ "$$ROOT" ],
  11. lang: "js"
  12. }
  13. }
  14. })

字符串

展开查看全部

相关问题