如何仅查看猫鼬中值的第一个字母来查找所有文档

Posted

技术标签:

【中文标题】如何仅查看猫鼬中值的第一个字母来查找所有文档【英文标题】:how to find all documents with only looking at first letter of the values in mongoose 【发布时间】:2017-06-09 17:53:43 【问题描述】:

我想按第一个字母查找所有文档。

情况是当我在 mysql 中查询然后我可以做WHERE Stores LIKE 'a%'

the result would be all data with the first letter a.

问题是:

如何使用mongoose 制作相同的querycase-sensitiveeg: (a,A) 怎么样。是否是同一个查询? 是否需要为这种情况创建lowercase_field

【问题讨论】:

【参考方案1】:

有一个$regex 运算符用于此目的,查询将如下所示:

Model.find("name": $regex: /^a/, $options: 'i').exec(callback);

可以简化为:

Model.find("name": /^a/i).exec(callback);

如果您需要在查询中传递变量:

var char = 'a';
Model.find("name": $regex: '^' + char, $options: 'i').exec(callback);

【讨论】:

我是正则表达式的新手,如何在其中传递变量? $regex: /^variable/ 在我的例子中像这样工作:Model.find("name": $regex: '^' + char, $options: 'i').exec(callback);

以上是关于如何仅查看猫鼬中值的第一个字母来查找所有文档的主要内容,如果未能解决你的问题,请参考以下文章

在猫鼬中仅更改整个嵌入式文档数组的一个字段

在猫鼬中仅更改整个嵌入式文档数组的一个字段

将文件名的第一个字母大写

NSPredicate 按数组中包含的第一个字母过滤

用jquery在字符串中查找最后一个单词的第一个字母(字符串可以有多个单词)

猫鼬没有加入两个系列