問題タブ [mongodb-shell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - mongodbの配列に対してANDクエリをどのように実行しますか?
ドキュメントの一部であるタグを含む配列があります。例:["red"、 "green"、 "blue"、 "white"、 "black"]
ここで、赤と青のすべてのドキュメントを検索します。
mongodb - MongoDB シェルから、新しい GUID で新しい行を生成します
GUID タイプのキーを持つ MongoDB コレクションにいくつかのドキュメントがあり、シェルを使用してそれらを新しい GUID を持つ新しい行にコピーできるようにしたいと考えています。私はこれを試しました:
_idフィールドを null に設定した後、自動生成されることを期待していましたが、もちろんそれはナイーブでした。シェルで新しい GUID を生成するにはどうすればよいでしょうか?
アップデート
シェルから GUID を生成することは明らかに不可能です。Mongo C# ドライバーを使用するために、C# でミニスクリプトを作成することになりました。
mongodb - MongoDBのシェルで直接ドキュメントのリストを生成するにはどうすればよいですか?
他の言語は使いたくない。MongoDBのシェルを開いて、_idを1つ増やした100000のドキュメントを作成します。
それは可能ですか?
mongodb - MongoDBシェル:「$ or」クエリとexplain()でエラーが発生しました
MongoDBの「$or」クエリのプロファイリングを実行しようとしていますが、Mongoシェルの「explain()」コマンドで問題が発生しています。findコマンドを使用してクエリを実行すると、期待どおりに機能し、1つのレコードが返されます。ただし、find()の最後で「explain()」を追加すると、次のエラーが発生します。
キャッチされない例外:エラー:{"$ err": "無効な演算子:$ or"、 "コード":10068}
私は次のクエリを試しています:
「$or」を「or」に変更すると、explain()は正常に機能しますが、クエリは0の結果を返します。Explain()の有無にかかわらず、構文は同じである必要があるという印象を受けましたが、何が間違っているのでしょうか。バージョン2.0.4を使用しています。助けることができるかもしれない誰にでも感謝します。
mongodb - 各タグのすべてのオブジェクトを取得します
私はmongodbsmapreduceを初めて使用しますが、今のところ完全には理解していません。そして、私は問題を抱えています。それは私が成功せずに数日間解決しようとします。
タグフィールドのある投稿のコレクションがあります。次に、タグの新しいコレクションをmapreduceします。すべてのタグには、この1つの特定のタグが割り当てられているすべての投稿IDの配列があります。
これを行うための私の試みの1つ(これは正しく行われません)
日付をなんらかの形で回転させる必要があることはわかっていますが、頭を包み込むことはできません。
mongodb - パスワードの入力を求めながらmongodbスクリプトファイルをロードするにはどうすればよいですか?
データベースにスクリプトファイルをロードして実行しながら、パスワードが必要なMongoDBデータベースに接続しようとしています。すべてコマンドラインから実行し、後でmongoシェルを終了させたいと思います。私の問題は、両方を同時に行うことはできないということです。
上記のコマンドは、それscript.js
が実際には私のパスワードであると見なしますが、原因はそうではありません。コマンドを入力した後、実際にパスワードの入力を求められます。
どうやってやるの?
javascript - MongoDB ドキュメント フィールドの名前をスペースで変更しようとしています
私は少し愚かで、キー名にスペースを使用して MongoDB でコレクションを作成しました。
それらの名前を変更するためにmongoシェルで関数を定義しようとしています:
指定されたコレクションに応じて、メトリックは 3 つのうちの 1 つになる可能性があります...問題は、「myMetric」以外の指定されたすべてのフィールドの名前が正しく変更されていることです。メトリック フィールドはスペースを含む元のフィールドのままです。
何か案は?
...アップデート。
「Avg Xfer /sec」メトリックのコレクションは「metric」に適切に名前が変更されているようですが、「Avg I/O /sec」または「Processor Busy %」のコレクションはそうではありません。それがなぜなのか、私にはよくわかりません。
mongodb - mongodb のカウント基準に基づいてフィールドのサブセットをクエリする
コレクションに保存されているドキュメントの形式は次のとおりです。
count(c) > 1 のコレクション内のすべてのドキュメントからフィールド「d」と「e」を取得したいと考えています。
これを効率的に行うにはどうすればよいでしょうか。
mongodb - Mongodb: mongo シェルで ObjectId から日付範囲クエリを実行する
次のようなコレクションがあります。
範囲クエリを実行して、2 つの日付の間のレコードを検索したいと考えています。私は、これを行うmongo shell varのObjectIdから日付を取得できることを知っています:
しかし、(現時点で把握できる限り)タイムスタンプ部分だけで構成される ObjectId を作成する方法はありません-私の理想的な解決策は、機能していないmongoシェルコードです。
minDate と MaxDate を範囲値として検索を使用します。
シェルでこれを行う方法はありますか? いくつかのドライバー製品には興味がありません。
mongodb - MongoDBのgetLastError()コマンドは、$ renameコマンドの影響を受けるレコードの数を示していますか?
「ディクショナリ」コレクションのフィールドマップを使用してインポートされたデータをプリーンするアプリケーションを開発しており、$rename
操作によって影響を受けたレコードの数を確認しようとしています。db.getLastError()
ユーザーに代わってmongoシェルが呼び出されるのはいつですか?コンソールでインタラクティブに新しいステートメントを受け入れる前に呼び出すことを読みましたgetLastError()
が、コマンドライン呼び出しのセマンティクスはどのようなものmongo script.js
ですか?getLastError()
スクリプトに対してはまったく呼び出されないと 思いますが、ドキュメントで確認を見つけることができませんでした。