2017-02-10 5 views
0

Я хочу скопировать в MongoDB результат запроса в другую коллекцию с помощью функции поиска() вместо совокупности() Мой запрос, как показано ниже:

db.fd2kfullsample.find({A_DELAY: {$lt: 0}, D_DELAY: {$lt: 0}}) 

$ вне используется с функцией агрегатный(), а не найти Я попытался следующие, не работали:

db.fd2kfullsample.find({ $or: [ { A_DELAY: {$lt: 0}} ,{ D_DELAY: {$lt: 
0} } , {$out: "test2"}] }) 

Error: error: { 
    "ok" : 0, 
    "errmsg" : "unknown top level operator: $out", 
    "code" : 2, 
    "codeName" : "BadValue" 
} 

вы знаете, как использовать находку() функцию и записать вывод этого запроса в коллекции?

или

Вы знаете, как сформировать совокупный запрос, который соответствует один и тот же результат с $ из оператора Do?

A Million Заранее благодарим за ваши ответы!

+0

использование агрегация запрос с [$ матча] (https://docs.mongodb.com/manual/reference/operator/aggregation/match/) этап – felix

ответ

1

Вы можете это сделать с помощью операции $match структуры агрегации.

db.fd2kfullsample.aggregate({ $match: { $or: [ { A_DELAY: { $lt: 0 } },{ D_DELAY: { $lt: 0 } }] } }, { $out: "test2" }) 
+0

Он работал Спасибо за вашу помощь @Luis Diego Hermandez Принимая этот ответ. –