定義
配列から最小値を返します。
注意
曖昧さ回避
このページでは、式として使用する場合の$min について説明します。
次の他のコンテキストでは $min を使用することもできます。
$min (accumulator)は、ドキュメントのグループから最小値を返すためにグループ化で使用されます。$min (window function)$setWindowFieldsステージで使用される は、特定のウィンドウ内のドキュメントから最小値を返します。
構文
{ $min: <expression> }
expression は配列に評価される必要があります。
動作
結果の型
$minが異なる型の値を比較する場合、 BSON比較順序を使用してどの値が小さいかを判断します。
NULL または欠損値
入力値の一部がnull または欠落している場合、$min は null 以外と欠落以外の値のみを考慮します。
すべての入力値がnull または欠落している場合、$min nullは を返します。
例
このページの例では、 sample_mflix データセット のデータを使用します。このデータセットを自己管理型MongoDBデプロイにロードする 方法の詳細については、「 サンプル データセットをロードする 」を参照してください。サンプルデータベースに変更を加えた場合、このページの例を実行するには、データベースを削除して再作成する必要がある場合があります。
次の例では、$min $projectステージの を使用して、sample_mflix.movies コレクションから最小値を計算します。
db.movies.aggregate( [ { $match: { title: { $in: [ "The Godfather", "Inception", "The Dark Knight" ] } } }, { $project: { _id: 0, title: 1, firstAlphabeticalGenre: { $min: "$genres" }, lowestRating: { $min: [ { $multiply: [ "$imdb.rating", 10 ] }, "$metacritic" ] } } }, { $sort: { title: 1 } } ] )
先行するパイプライン:
$match3 つの特定の映画をフィルタリングするには、 を使用します。$projectと を使用して$min2 つのフィールドを作成します。firstAlphabeticalGenre: を使用して、ジャンル配列からアルファベット順に最初のジャンルを選択します{ $min: "$genres" }lowestRating: IMDb とメタクリティカル内の最低評価。いずれも 0–100増やすに正規化されています。使用するのは{ $min: [ { $multiply: [ "$imdb.rating", 10 ] }, "$metacritic" ] }
$sort結果をタイトル別に並べ替えるには、 を使用します。