$median (中央値アキュムレータ)
最終更新:2026-10-09
$median (中央値アキュムレータ)
$median は、グループ内の数値フィールドの中央値を返すアキュムレータで、MongoDB 7.0 以降で利用できます。中央値はソートしたときの真ん中の値で、外れ値に頑健です。method オプションで近似(高速)か厳密(高精度)かを選べます。
| カテゴリ | アキュムレータ |
|---|---|
| MongoDB バージョン | 7.0+ |
| 例の言語 | mongosh(シェル) |
📝 構文
{ $group: { _id: <key>, med: { $median: { input: "$field", method: "approximate" } } } }
戻り値:グループの中央値
▶ 例
以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):
// $median: 部署ごとの給与の中央値
db.salaries.aggregate([
{ $group: { _id: '$dept', med: { $median: { input: '$salary', method: 'approximate' } } } }
])
出力:
{ "_id": "ENG", "med": 42000 }
📌 注意事項
- MongoDB 7.0 以降が必要
- method は approximate と exact をサポート
- 欠損フィールドは無視される。input は数値にする
🏷️ 関連タグ
💡 関連ケース
さらなる実践ケースを近日公開予定。
📚 関連チュートリアル
❓ よくある質問
Q$median にはどのバージョンが必要ですか?
AMongoDB 7.0 以降が必要です。
Qapproximate と exact の違いは?
Aapproximate は高速な分位数アルゴリズムを使います。exact は高コストながら正確に計算します。
Q$median と $percentile の関係は?
A$median は 50 パーセンタイルです。$percentile は任意のパーセンタイルを計算します。