如何计算猫鼬中具有一个不同字段的记录?

2023-11-24

在探索 Nodejs 的 mongoose 时,我遇到了需要知道我的集合中用户数量的问题:

我的收藏有记录,每条记录都有一个用户。我想知道独特(不同)用户的数量。

我怎样才能用猫鼬做到这一点?

EDIT:

数据库增长得非常快,是否有办法从数据库中获取数字,而不是获取所有不同的记录并对其进行计数?


这是一个替代答案,因为当我使用 Mongoose 3.1.2 尝试 Reddest 的方法时出现异常(对我来说这似乎是 Mongoose 中的一个错误,因为 Reddest 的方法应该没问题)。

您可以致电distinct集合模型上的方法,指定该集合的用户识别字段的名称:

Record.distinct('user_id').exec(function (err, user_ids) {
    console.log('The number of unique users is: %d', user_ids.length);
});

或者如果你想链接distinct从查找中调用,将回调包含在distinct打电话(这对我有用):

Record.find().distinct('user_id', function (err, user_ids) { ... });

UPDATE

如果您只想计数而不获取值,请粘贴count()在链中调用:

Record.distinct('user_id').count().exec(function (err, count) {
    console.log('The number of unique users is: %d', count);
});

NOTE:这在最新的 Mongoose 代码(3.5.2)中不起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何计算猫鼬中具有一个不同字段的记录? 的相关文章

随机推荐

  • 以编程方式将 Power BI 报表部署到 Power BI 报表服务器并更改连接字符串

    是否有任何方法可以将 Power BI 报表部署到 Power BI 报表服务器 而无需手动复制这些文件 将它们上传到服务器 最后逐个报表地更改每个报表的数据源连接信息 这在每个报表中都不实用客户站点 例如 PowerBI 报告文件 Rep
  • bmake 的优点

    除了 bmake 是 GNU make 的 BSD 等价物这一事实之外 我无法清楚地理解它相对于 GNU make 的优势 谁能帮我 我只能找到一个resource这有点帮助 感谢更多帮助或指示 BSD make 和 GNU make 都是
  • 如何获取一周以上的推文(使用 tweepy 或其他 python 库)

    我一直在试图解决这个问题 但这确实令人沮丧 我正在尝试使用 Tweepy 获取带有特定主题标签的推文 大量推文 但这不会追溯到超过一周 我需要回到至少两年前 持续几个月 这可能吗 如果可能的话 怎么办 只是为了检查这里是我的代码 impor
  • mysql 游标中的记录数而不迭代?

    我正在尝试为以下逻辑编写 mysql 程序 select id fullname from users where fullname like concat lastname firstname middlename 如果上面的查询返回 0
  • Pandas json_normalize 产生令人困惑的“KeyError”消息?

    我正在尝试将嵌套 JSON 转换为 Pandas 数据帧 我一直在使用json normalize一直成功 直到我遇到了某个 JSON 我制作了一个较小的版本来重现问题 from pandas io json import json nor
  • 为什么某些 IDE 不缩进 switch 内的 case 语句? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么人们不缩进 C 访问说明符 case 语句 我有一个语法问题 不是关于how 而是why 许多 IDE 例如 Eclipse 和 Qt Creator 会自动缩进switch像这样 Day ra
  • 在 MongoDB 中查找共享键值的两个文档

    我在 MongoDB 中有大量文档 每个文档都有一个名为 name 的键 另一个名为 type 的键 我想找到两个文件一样的名字 and 不同种类 一个简单的 MongoDB 对应项 SELECT FROM table AS t1 tabl
  • COALESCE 或 CASE 更高效和/或标准

    就 x 与 y 而言 x 是否更符合 sql 标准 如果主观的话抱歉 x 比 y 更有效率吗 或者这些脚本完全不同并且在不同的上下文中使用 x SELECT FROM a INNER JOIN b ON COALESCE b columnt
  • 声明/定义自定义类 cout 对象的正确方法

    我创建了自己的std cout类似于将两者写入的对象std cout并写入日志文件 我目前在头文件中像这样定义它 但我收到了未使用的变量警告 头文件
  • android listview快速滚动自定义问题

    这是我的列表视图
  • 如何在jetpack compose中突出显示文本中的特定单词?

    我想知道如何在 jetpack compose 中突出显示文本的特定部分 我试过Html fromHtml 像这样 Text text Html fromHtml font color red Hello font World toStri
  • 使用 let 在 Google Sheet 脚本编辑器上声明变量

    当我尝试使用初始化变量时let我收到此错误提示 Missing 在声明之前 如何使用声明变量let在 Google Sheet 脚本编辑器上 let从 ECMAScript 2015 ES6 添加 但不幸的是 Google Apps 脚本尚
  • 为什么 printf 将 8 位字符填充为 32 位?

    char byte 0xff printf lu n sizeof byte Output is 1 printf x n byte Output is ffffffff 如果尺寸为byte只有一个字节 那为什么printf 表现得好像它是
  • 计算Python数组中每5个元素的总和

    我有一个 python 数组 我想计算其中每 5 个元素的总和 就我而言 我有数组c有十个元素 实际上它还有更多的元素 c 1 0 0 0 0 2 0 0 0 0 所以最后我想要一个新的数组 c new 应显示前 5 个元素和后 5 个元素
  • 在 bash 中重定向 C 程序输出时出现问题

    我用 C 编写了一个程序 使用 printf 将消息发送到标准输出 但在将输出重定向到文件 从 bash 运行 时遇到问题 我试过了 program argument gt gt program out program argument g
  • 磁盘已满时删除文件的 Shell 脚本

    如果缓存目录变得太大 我正在编写一个小脚本 每天通过 CRON 清理 Linux 上的空间 由于我对 bash 脚本编写非常陌生 因此我需要 Linux 专家的一些帮助 这是基本上的逻辑 伪代码 if Drive Space Left lt
  • 如何在 C# 中更改 Windows 窗体上 Groupbox 的边框粗细?

    我没有找到任何解决方案可以帮助我解决有关 SO 的旧问题 是否可以通过更改颜色使它们更厚或更明显 如果是的话 一些代码会很棒 或者只是提示如何做到这一点 您需要进行定制GroupBox控制 看The Grouper 自定义 Groupbox
  • WPF 按钮相同/推荐宽度

    假设您有一个带有多个按钮的窗口 例如确定 取消或是 否 取消 所有按钮的宽度必须相同 显然 这可以通过猜测一个数字并将它们全部硬连接到该数字来完成 有没有更好的方法来做到这一点 一种会考虑首选 推荐尺寸的方法 确定 按钮应该有多宽 这不是一
  • 在Android模拟器中使用相机

    我希望使用网络摄像头在 Android 模拟器中模拟摄像头 基本上我只需要用模拟器中的相机拍照 不需要实时预览 即如果它使它更容易 我按照教程进行操作here这是我能找到的唯一一个接近我的要求的 但是该教程中使用的许多库 如 android
  • 如何计算猫鼬中具有一个不同字段的记录?

    在探索 Nodejs 的 mongoose 时 我遇到了需要知道我的集合中用户数量的问题 我的收藏有记录 每条记录都有一个用户 我想知道独特 不同 用户的数量 我怎样才能用猫鼬做到这一点 EDIT 数据库增长得非常快 是否有办法从数据库中获