MongoDB 集約整形ツール

集約パイプラインをブラウザ内で即座にインデント・整形する MongoDB 集約整形ツール。

これはローカルツールです。すべてブラウザ内で動作し、貼り付けた集約パイプラインはデバイスから離れることはなく、ArrayKit やいかなるサーバーにも何もアップロードされません。

開発・運営:Udit Agarwal

MongoDB クエリ整形ツールを開く

MongoDB 集計整形ツール について

MongoDB 集約整形ツールは、乱雑な 1 行の集約パイプラインを、クリーンで読みやすいコードにブラウザ内で整形・インデントします。`db.collection.aggregate([...])` 呼び出し、または `$match`、`$group`、`$sort`、`$lookup` などのステージのむき出しの配列を貼り付けると、パイプライン全体を一貫した 2 スペースのインデントで整形し、各ステージが何をしているか実際に読めるようにします。遅い集約をデバッグするバックエンド・データエンジニア、プルリクエストを確認するレビュアー、ログ・ドライバー・Mongo シェルから圧縮されたパイプラインをコピーするすべての人のために作られています。すべてブラウザツールとしてローカルで動作するため、リクエストの構築やアップロードは一切なく、整形ツールは自分のマシン上でパイプラインを解析・再整形します。エクスポートされたクエリの整理、パイプラインのドキュメント化、本番データに対する集約を実行する前の括弧の位置ミスの発見に使えます。

機能

  • 完全な `db.collection.aggregate([...])` 呼び出しとむき出しのステージ配列の両方を整形
  • すべてのステージとネストされた式にわたる一貫した 2 スペースのインデント
  • $match、$group、$sort、$project、$lookup、$unwind、$facet などの一般的なステージを処理
  • ISODate()、ObjectId()、演算子キーなどの MongoDB 固有の値を保持
  • 入力に合わせたライブ整形 — 実行や送信のステップ不要
  • 括弧の不一致や構文が無効な場合の明確なエラーメッセージ
  • 整形したパイプラインをコピーするか .js ファイルとしてダウンロード
  • すべてブラウザ内で動作 — 何もアップロードされない

MongoDB 集計整形ツール の使い方

  1. 集約パイプラインまたは完全な aggregate() 呼び出しを入力欄に貼り付ける
  2. 出力パネルに表示される整形・インデントされたパイプラインを読む
  3. 括弧や構文がおかしい場合は、報告されたエラーを修正する
  4. 整形した結果をコピーするか pipeline.js としてダウンロードする

例

入力

db.orders.aggregate([{$match:{status:"paid"}},{$group:{_id:"$userId",total:{$sum:"$amount"}}},{$sort:{total:-1}}])

出力

db.orders.aggregate([
  {
    $match: {
      status: "paid"
    }
  },
  {
    $group: {
      _id: "$userId",
      total: {
        $sum: "$amount"
      }
    }
  },
  {
    $sort: {
      total: -1
    }
  }
])

コンパクトな 1 行のパイプラインを、読みやすくインデントされたステージに再整形します。

よくあるエラーとトラブルシューティング

  • 整形できませんでした — 括弧の不一致が報告される。 — すべての [、{、( に対応する閉じ括弧があるか確認してください。括弧が 1 つ抜けるとパイプライン全体の解析が壊れます。
  • パイプラインの一部だけ貼り付けて構文エラーが出た。 — 外側の括弧を含め、完全な aggregate([...]) 呼び出しまたはステージ配列全体をコピーしてください。
  • コードエディタからの末尾カンマが解析失敗を引き起こす。 — 整形前に、最後のステージやオブジェクトの最後のフィールドの後の末尾カンマを削除してください。
  • ドキュメントからのスマートクォートが入力を壊す。 — 文字列値が正しく解析されるよう、波括弧の引用符をまっすぐな " や ' の引用符に置き換えてください。

よくある質問

MongoDB 集約整形ツールとは何ですか?
圧縮された、または 1 行の MongoDB 集約パイプラインを取り込み、各ステージと式が読みやすくレビューしやすいクリーンなインデントで再整形するブラウザツールです。
完全な aggregate() 呼び出しでもステージ配列だけでも動作しますか?
両方です。完全な db.collection.aggregate([...]) 文を貼り付けても、パイプラインステージのむき出しの配列だけを貼り付けても、整形ツールはどちらも整形します。
データベースに対して集約を実行しますか?
いいえ。パイプラインのテキストを整形するだけです。MongoDB に接続したり、集約を実行したり、クエリ結果を返したりはしません。
パイプラインはどこかにアップロードされますか?
いいえ。これはすべてブラウザ内で動作するローカルツールなので、貼り付けたパイプラインはデバイスから離れることはなく、ArrayKit やいかなるサーバーにも何もアップロードされません。
機密のフィールド名や値を含むパイプラインを貼り付けても安全ですか?
はい。すべての解析と整形は自分のマシン上でローカルに行われるため、機密のコレクション、フィールド、値の詳細はデバイス上に留まります。
MongoDB クエリ整形ツールとはどう違いますか?
クエリ整形ツールは find() やシェルスタイルのクエリを対象としますが、このツールは $match、$group、$sort などのステージの配列である集約パイプラインに最適化されています。

関連ツール

コードフォーマッターの他のツール

コードフォーマッターのツールをすべて見る (32) · すべてのツール