Docs Menu
Docs Home
/
MongoDB Shell
/ /

EJSON.serialize()

項目一覧

  • 構文
  • メソッド フィールド
  • 動作
  • インタラクティブmongo shell EJSON.serialize() 例
  • コマンドラインmongo shell EJSON.serialize() 例
  • 詳細

EJSON.serialize()メソッドは、BSON オブジェクトを JavaScript オブジェクトとして拡張 JSON 表現に変換します。

MongoDB は BSON を使用してデータを保存します。 の多くの外部データ変換アプリケーションは JSON を使用します。 EJSON.serialize()を使用して BSON を JSON に変換し、それらの外部アプリケーションの出力を保存できます。

このメソッドの構文は次のとおりです。

EJSON.serialize( object, [ options ] )

メソッドは次のフィールドを取ります。

フィールド
タイプ
必要性
説明
object
BSON オブジェクト
必須
変換する BSON オブジェクト。 たとえば、ドキュメントの配列。
options
string
任意

出力オブジェクトの タイプを変更します。 唯一の オプションは{ relaxed: <boolean> }です。

ブール値
説明
true
JSON オブジェクトタイプを返します。 デフォルトはtrueです。
false
BSON オブジェクトタイプを返します。

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") }
] )

次の例では、 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' }
}
]

コレクション データをファイルに保存するには、 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 シリアル化メソッド

  • EJSON ドキュメント

戻る

parse()