MongoDB から個別の値のみを取得するクエリを実行しようとしています。クエリを実行すると正しい値が返されますが、C API を使用して結果の BSON 配列を反復処理する方法がわかりません。
コードは次のとおりです。
bson query;
bson out;
bson_init(&query);
bson_append_string(&query, "distinct", "myCollection");
bson_append_string(&query, "key", "someKey");
bson_finish(&query);
if (mongo_run_command( conn, "myDB", &query, &out ) != MONGO_OK) {
printf("mongo_run_command failed!\n");
return 1;
}
else {
while(bson_iterator_next(out)){
bson iterator;
if (bson_find(iterator, &out, "someKey")) {
printf("%s\n", bson_iterator_string(iterator));
}
}
bson_print(&out);
はbson_print(&out)
正しい配列を出力しますが、配列をループするにはどうすればよいですか?
C API のドキュメントは非常に薄く、mongo_run_command
.
どんな助けでも大歓迎です