問題タブ [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 - mongo シェルでの配列出力形式
Mongo シェルに配列の内容をページ全体に順次出力させる方法はありますか?
具体的には: 与えられた配列 [8888, 8888, 8888, 8888]
8888, 8888, 8888, 8888
asではなくとしてレンダリングしたい
それは私が得続けているものです。(実際の配列には 8888 の 84 要素があります。この例が正しく出力されることはわかっています)
さらに具体的には、John Page によって公開されているマンデルブロ フラクタルの集計コードを機能させようとしています。秘訣は、フォントサイズを非常に小さく保つことです。それでも、フォント サイズを 2 に設定し、ターミナル ウィンドウを 1000 列に設定しても、配列は縦方向に出力され続けます。
私はいくつかの実験を行いましたが、各配列要素のサイズ、文字間隔、およびフォントサイズに応じて、大まかなガイドは、角括弧 [ ] > 50 間の文字の総数または要素数の任意の配列です。 > 20 の場合、配列は垂直に印刷されます。
node.js を使用してターミナル bash シェルで同じ実験を試みましたが、これは起こりません。したがって、Mongo シェルのフォーマットの問題のようです。
Mongoシェルできれいな印刷を行うために、この回答DBQuery.prototype._prettyShell = false
の反対として使用しようとしましたが、運がありませんでした。
Page 氏は親切にもコードを自分で再度テストし、期待どおりに動作することを保証してくれました。
完全を期すために、Mac OS X 10.7.5 で MongoDB シェル バージョン 2.4.9 ターミナル バージョン 2.2.3 (303.2) を実行しています。
どうもありがとう
(注: 公開されている元のコードでは、最初のループに開き中括弧が 2 つfor
ありませんでした。コードでこれを修正しましたが、これは問題の原因ではありません。集約の結果として生成される最終的な配列正しくレンダリングされないだけです)
mongodb - Mongo DB 認証を有効にしようとすると TypeError が発生する
Mongo DB 認証を有効にしようとするステップ 3 にいます。指示どおりに Mongo シェルを使用してユーザーを作成しようとすると、シェルから次のように報告されます。
TypeError: オブジェクト admin のプロパティ 'createUser' は関数ではありません
--auth オプションを指定して mongod を起動し、admin データベースに切り替えました。いつものように、助けていただければ幸いです。
mongodb - デフォルトですべての数値を整数として保存するように Mongo シェルを構成する
デフォルトでは、MongoDB シェルはすべての数値を float として解釈します。これは、既存の JSON 形式のデータ (Mongo に文字列として格納されている) を実際の Mongo BSON オブジェクトに変換しようとすると問題になります。また、整数はデータのどこにでも出現する可能性があるため、データ内の整数値をNumberInt(...)
/で明示的かつ手動でラップするのは面倒です。NumberLong(...)
1 つの MongoDB シェル セッションを使用するようにNumberInt
、またはNumberLong
既定で構成する方法はありますか?
または、JSON の文字列を MongoDB シェルのオブジェクトに解析して、小数点のないすべての数値が既にNumberInt
/でラップされるようにする方法はありNumberLong
ますか?
mongodb - MongoDB シェルから現在のスクリプト パスを取得する
クライアントでMongoDBシェルのJavaScriptコードを書いています。実行中のスクリプトファイルのパスを取得するにはどうすればよいですか? の値ではないことに注意してくださいpwd()
。たとえば、私は/my_scripts/utils.js
から実行してい/my_path
ます:
so をpwd()
返しますが、現在実行中のファイル/my_path
のフル パス (または の値への相対パス) を取得するにはどうすればよいですか?pwd()
/my_scripts/utils.js
mongodb - コレクション B の情報を使用してコレクション A のドキュメントをフィルター処理する - どのように?
次の構造のドキュメントを含むコレクション A を想定します。
{_id: N}
N は正の整数です。
そして、次の種類のドキュメントを含む 2 番目のコレクション B:
{_id: M, ids: [n1,n2,...]}
n1、n2、... は正の整数です。
B のドキュメントは、コレクション A の一連のドキュメントを効果的に定義しています。
つまり、コレクション A には 2 種類のドキュメントがあります。
- コレクション B のドキュメントの少なくとも 1 つの ids-array に _id 値が含まれているドキュメント
- コレクション B のドキュメントのどの ids-array にも _id が含まれていないもの
MongoDB シェル式を使用して次のタスクを実行する方法がわかりません。
コレクション B のドキュメントの ids-array に含まれていないすべてのドキュメントをコレクション A から削除したいと思います。
私の直感的なアプローチは、すべての ids-arrays を集計付きのセットに変換し、この新しい配列を使用して remove-method 内でクエリを作成することですが、これはうまくいかないようです。
私は複数のことを試しました-これが1つです:
javascript - mongodb デバッグ - ReferenceError: コンソールが定義されていません
デバッグ用の式を取得した場所でjs
実行するファイルを取得しました。mongodb
console.log
実行すると...
...出力にエラーが発生しました:
デバッグ目的で中間結果をログに記録する方法はありますか?
javascript - MongoDB: "version" という名前のコレクションをクエリする方法
「バージョン」という名前のコレクションを含む mongo データベースを使用しています。現在、「db.version()」自体が予約済みの関数であり、コレクション名が隠されているようです。
Mongo Java Driver を使用すると、コレクションからデータを取得できます。CLI を使用してそれを行うにはどうすればよいですか?