我目前正在使用 Mongoid 与我的 mongodb 数据库通信。我有如下查询:
ClassDoc.only(:class_id).where(:recurrs => true)
我只对 ID 感兴趣,因为我在后续查询中将它们排除在外。但是,后续查询需要数组中的 ID,所以我必须这样做:
first_result_ids = ClassDoc.only(:class_id).where(:recurrs => true).collect { |class| class.class_id }
这需要很长时间,因为 AFAIK '收集' 循环遍历每个结果。仅循环 1000 个结果可能需要 10 秒。
有没有办法将 ID 直接拉到数组中?