2016-04-01 2 views
0

У меня есть коллекция MongoDB со следующими документами. В некоторых документах есть 1 поле, а некоторые - 2. Я заинтересован в экспорте только файлов с двумя полями в файл CSV. Какой запрос я могу использовать для исключения тех, у кого есть 1 поле?mongoexport исключить документы

[ 
{ 
    "id" : 1, 
}, 

{ 
    "id" : 2, 
}, 

{ 
    "id" : 3 
    "productId": 300 
} 
] 

моя команда mongoexport является: mongoexport --username x --password x --host x --db mydb --collection mycol --type=csv --fields id,productid --out "c:\myfile.csv"

+0

Престола [ '--query '] (https://docs.mongodb.org/manual/reference/program/mongoexport/#cmdoption-query) и [' $ exists'] (https://docs.mongodb.org/manual/refer ence/operator/query/exists /) –

ответ

-1

Попробуйте это, где я добавил запрос

mongoexport --username x --password x --host x --db mydb --collection mycol --type=csv --fields id,productid --query '{ "$and": [ { "id": {"$exists":true}},{"productId":{"$exists":true}}] }' --out "c:\myfile.csv" 

Или это может быть, например, как

mongoexport --username x --password x --host x --db mydb --collection mycol --type=csv --fields id,productid --query '{ "id": {"$exists":true},"productId":{"$exists":true} }' --out "c:\myfile.csv" 
+0

Suresh, я пробовал оба метода, и я получаю сообщение об ошибке «json: не могу отменить строку в значение Go value type map [string] interface {}" – degmo

+0

Использовать двойные кавычки в полях запроса, например { "id": {"$ exists": true}, "productId": {"$ exists": true}} –

+0

Суреш, который все еще не работает. – degmo

Смежные вопросы