EJSON.serialize()
EJSON.serialize()
メソッドは、BSON オブジェクトを JavaScript オブジェクトとして拡張 JSON 表現に変換します。
MongoDB は BSON を使用してデータを保存します。 の多くの外部データ変換アプリケーションは JSON を使用します。 EJSON.serialize()
を使用して BSON を JSON に変換し、それらの外部アプリケーションの出力を保存できます。
構文
このメソッドの構文は次のとおりです。
EJSON.serialize( object, [ options ] )
メソッド フィールド
メソッドは次のフィールドを取ります。
フィールド | タイプ | 必要性 | 説明 | ||||||
---|---|---|---|---|---|---|---|---|---|
| BSON オブジェクト | 必須 | 変換する BSON オブジェクト。 たとえば、ドキュメントの配列。 | ||||||
| string | 任意 | 出力オブジェクトの タイプを変更します。 唯一の オプションは
|
動作
EJSON.serialize()
は、インタラクティブなmongosh
セッションまたは--eval
を使用してシステム コマンドラインから実行できます。
インタラクティブmongosh
セッションからEJSON.serialize()
を実行するには、次を使用します。
EJSON.serialize( object, [ options ] )
システムコマンドラインからEJSON.serialize()
を実行するには、次のコマンドを使用します。
mongosh --eval "EJSON.serialize( object, [ options ] )"
例
例のsales
コレクションを作成します。
db.sales.insertMany( [ { custId: 345, purchaseDate: ISODate("2023-07-04"), quantity: 4, cost: Decimal128("100.60") }, { custId: 346, purchaseDate: ISODate("2023-07-12"), quantity: 3, cost: Decimal128("175.45") }, { custId: 486, purchaseDate: ISODate("2023-08-01"), quantity: 9, cost: Decimal128("200.53") } ] )
インタラクティブmongo shell EJSON.serialize() 例
次の例では、 sales
ドキュメントを配列として検索し、その結果をsalesCollection
オブジェクトに保存します。
salesCollection = EJSON.serialize( db.sales.find().toArray() )
JSON を使用する出力例は以下のとおりです。
[ { _id: { '$oid': '6520519a0dbd2d208a5c7941' }, custId: 345, purchaseDate: { '$date': '2023-07-04T00:00:00Z' }, quantity: 4, cost: { '$numberDecimal': '100.60' } }, { _id: { '$oid': '6520519a0dbd2d208a5c7942' }, custId: 346, purchaseDate: { '$date': '2023-07-12T00:00:00Z' }, quantity: 3, cost: { '$numberDecimal': '175.45' } }, { _id: { '$oid': '6520519a0dbd2d208a5c7943' }, custId: 486, purchaseDate: { '$date': '2023-08-01T00:00:00Z' }, quantity: 9, cost: { '$numberDecimal': '200.53' } } ]
コマンドラインmongo shell EJSON.serialize() 例
コレクション データをファイルに保存するには、 mongosh --eval
メソッドでEJSON.serialize()
を使用できます。
次の例では、 sales
ドキュメントを配列として検索し、その結果をコンピューターのファイル システム上のsales.json
という名前のファイルに保存します。
# Note: The example is formatted to fit the page. mongosh --quiet \ --eval "EJSON.serialize( db.sales.find().toArray() )" \ > sales.json
その後に、 sales.json
ファイルを外部のデータ変換アプリケーションで使用できるようになります。
詳細
EJSON ドキュメント