リファレンス

最終更新:2026-10-09

リファレンス

アルファベット順に並んだ 311 個の MongoDB 項目とその使い方の説明。

#
$eq$eq は、フィールドの値が指定した値と等しいドキュメントを選択します。MongoDB で最もよく使われる完全一致の述語です。`{ age: { $eq: 21 } }` は `{...
$ne$ne は、フィールドの値が指定した値と等しくないドキュメントを選択します。$eq の否定です。`{ age: { $ne: 18 } }` は age が 18 でないすべてのド...
$in$in は、フィールドの値が指定した配列内のいずれかの値と等しいドキュメントを選択します。$or の便利な省略形です。`{ age: { $in: [18, 21, 30] } }...
$set$set は、ドキュメント内の 1 つ以上のフィールドに値を代入(または上書き)します。フィールドが存在しない場合は作成され、ネストしたフィールドにはドット記法のパスが使えます。最...
$inc$inc は、数値フィールドを指定した量だけ増加(または減少)させます。フィールドが存在しない場合は、増分値を入れて作成します。`{ $inc: { views: 1 } }` は...
$gt$gt は、フィールドの値が指定値より厳密に大きいドキュメントを選択します。`{ age: { $gt: 21 } }` は 21 歳より上のユーザーに一致し、ちょうど 21 は含...
$gte$gte は、フィールドの値が指定値以上のドキュメントを選択します。`{ age: { $gte: 21 } }` は 21 歳以上のユーザーに一致します。$gt の境界値を含むバ...
$lt$lt は、フィールドの値が指定値より厳密に小さいドキュメントを選択します。`{ price: { $lt: 20 } }` は 20 未満の価格の商品に一致します。価格の上限、締...
$lte$lte は、フィールドの値が指定値以下のドキュメントを選択します。`{ price: { $lte: 50 } }` は価格が最大 50 の商品に一致します。「以下」の意味を表し...
$nin$nin は、フィールドの値が指定した配列内のどの値とも等しくないドキュメントを選択します。$in の否定です。`{ age: { $nin: [18, 21] } }` は 18...
$and$and は複数のクエリ条件を組み合わせ、すべてを満たすドキュメントを選択します。`{ $and: [ { price: { $gt: 10 } }, { inStock: tru...
$or$or は複数のクエリ条件を組み合わせ、いずれかを満たすドキュメントに一致します。`{ $or: [ { price: { $lt: 5 } }, { sale: true } ]...
$not$not は演算子式を否定し、内側の条件を満たさないドキュメントを返します。`{ price: { $not: { $gt: 50 } } }` は最大 50 の価格の商品に一致し...
$nor$nor は複数の条件を組み合わせ、どの条件も成立しないドキュメントのみに一致します。`{ $nor: [ { price: 1.99 }, { sale: true } ] }`...
$exists$exists は、フィールドが存在するかどうかでドキュメントを絞り込みます。`{ $exists: true }` はフィールドが存在し null でないドキュメントに一致し、`...
$type$type は、フィールドの値が指定した BSON 型であるドキュメントに一致します。`{ age: { $type: 'int' } }` は age が 32 ビット整数のドキ...
$regex$regex は、文字列フィールドを正規表現でマッチします。`{ name: { $regex: '^A' } }` は A で始まる名前に一致します。オプション: i = 大文字...
$jsonSchema$jsonSchema は、JSON Schema ドラフト標準に基づいてドキュメント構造を検証します。クエリ条件としても、コレクションのバリデータとしても使えます。`{ $jso...
$expr$expr は、クエリ条件で集計式を使えるようにします。同一ドキュメント内の複数フィールドの比較や、集計演算子の呼び出しができます。`{ $expr: { $gt: ['$pric...
$text$text は、テキストインデックスが付与されたフィールドに対して全文検索を実行します。`{ $text: { $search: 'coffee shop' } }` のように使い...
$where$where は、JavaScript 式をクエリ条件として評価します。`{ $where: 'this.credits == this.debits' }` のように使います。サ...
$mod$mod は、フィールドの値を除数で割ったときの剰余が指定値になるドキュメントに一致します。`{ qty: { $mod: [4, 0] } }` は 4 で割り切れる数量に一致し...
$all$all は、配列フィールドが指定配列のすべての要素を含むドキュメントに一致します。`{ tags: { $all: ['mongodb', 'database'] } }` は ...
$elemMatch$elemMatch は、少なくとも 1 つの配列要素が指定されたすべての条件を満たすドキュメントに一致します。`{ scores: { $elemMatch: { $gt: 80...
$size$size は、配列フィールドの長さが指定した値とちょうど一致するドキュメントにマッチします。`{ tags: { $size: 3 } }` はタグがちょうど 3 つのドキュメン...
$geoWithin$geoWithin は、位置が指定したジオメトリの内部にあるドキュメントを検索します。$box(長方形)、$polygon、$center(平面の円)、$centerSphere...
$geoIntersects$geoIntersects は、GeoJSON ジオメトリが指定したジオメトリと交差するドキュメントを検索します。`{ loc: { $geoIntersects: { $geo...
$near$near は、地点からの距離の昇順で地理空間ドキュメントを返します。`{ loc: { $near: { $geometry: { type: 'Point', coordina...
$nearSphere$nearSphere は、球面(大円)距離で近い順にジオスペーシャルなドキュメントを返します。`{ loc: { $nearSphere: { $geometry: { type...
$bitsAllSet$bitsAllSet は、指定した位置のビットがすべて 1 にセットされているドキュメントを照合します。`{ flags: { $bitsAllSet: 5 } }`(2 進数で...
$bitsAllClear$bitsAllClear は、指定した位置のビットがすべて 0 のドキュメントを照合します。`{ flags: { $bitsAllClear: 3 } }`(2 進数で 11)...
$bitsAnySet$bitsAnySet は、指定した位置のビットのうち少なくとも 1 つが 1 のドキュメントを照合します。`{ flags: { $bitsAnySet: 12 } }`(2 進...
$bitsAnyClear$bitsAnyClear は、指定した位置のビットのうち少なくとも 1 つが 0 のドキュメントを照合します。`{ flags: { $bitsAnyClear: 7 } }`(...
$meta$meta は $text 検索のメタデータを射影します。最もよく使うのは関連度スコア textScore です。`{ score: { $meta: 'textScore' } ...
$slice射影での $slice は、ドキュメントを変更せずに配列フィールドの一部を返します。`{ tags: { $slice: 2 } }` は先頭 2 要素を返し、`{ tags: {...
$natural$natural は、コレクションの物理的な保存順でドキュメントを返します。`{ $natural: 1 }` が順方向、`{ $natural: -1 }` が逆方向です。cap...
$comment$comment はクエリに説明文を付与し、currentOp、スロークエリログ、プロファイラーでクエリの発信元を追跡できるようにします。`{ $comment: 'checkou...
$currentDate$currentDate は、フィールドに現在時刻を Date または Timestamp として設定します。`{ $currentDate: { lastModified: tr...
$min$min は、指定した値が現在のフィールド値より小さい場合にのみその値を書き込み、それ以外はフィールドを変更しません。`{ $min: { lowPrice: 50 } }` のよ...
$max$max は、指定した値が現在のフィールド値より大きい場合にのみその値を書き込みます。`{ $max: { highScore: 980 } }` のように使います。フィールドが存...
$mul$mul は、フィールドの値を指定した係数で乗算します。`{ $mul: { price: 0.9 } }` で 10% 引きになり、`{ $mul: { quantity: 2 ...
$rename$rename はフィールド名を変更します。`{ $rename: { 'oldName': 'newName' } }` のように使い、ネストしたフィールドにはドット区切りのパス...
$setOnInsert$setOnInsert は、upsert が新しいドキュメントを挿入した場合にのみフィールド値を設定し、既存ドキュメントに一致した場合は無視されます。`{ $setOnInser...
$unset$unset は、ドキュメントから指定したフィールドを削除します。`{ $unset: { age: '' } }` のように書きます — 値はプレースホルダで、通常は空文字列を指...
$addToSet$addToSet は、配列に値がまだ存在しない場合のみ追加し、配列の重複を防ぎます。`{ $addToSet: { tags: 'mongodb' } }` のように使います。複...
$pop$pop は、配列の先頭(-1)または末尾(1)の要素を削除します。`{ $pop: { queue: -1 } }` で先頭から、`{ $pop: { queue: 1 } }`...
$pull$pull は、配列から指定した値に等しい要素、または条件を満たす要素をすべて削除します。`{ $pull: { tags: 'spam' } }` で 'spam' をすべて削除...
$push$push は、配列の末尾に 1 つまたは複数の要素を追加します。`{ $push: { items: 'pen' } }` のように使い、複数の値を一度に追加するには $each...
$pullAll$pullAll は、配列から指定したリスト内のいずれかの値に等しい要素をすべて削除します。`{ $pullAll: { tags: ['spam', 'ads'] } }` のよ...
$bit$bit は、整数フィールドに対してビット演算(AND、OR、XOR)を行います。`{ $bit: { flags: { and: 254 } } }` で最下位ビットをクリアでき...
$position$position は、$push が要素を挿入する位置を指定します。`{ $push: { items: { $each: ['x'], $position: 0 } } }` ...
$[]$[] は、配列のすべての要素を更新する位置演算子です。`{ $set: { 'grades.$[]': 90 } }` で全グレードを 90 に設定します。arrayFilter...
$[]$[identifier] は、arrayFilters と組み合わせて、条件に一致する配列要素だけを更新する位置演算子です。`{ $set: { 'grades.$[elem]'...
$each$each は、$push と $addToSet に複数の値を渡すための修飾子です。`{ $push: { tags: { $each: ['a', 'b', 'c'] } } ...
$slice更新修飾子としての $slice は、$push 後に配列の長さを上限で切り詰めます。`{ $push: { log: { $each: [msg], $slice: -10 } ...
$sort更新修飾子としての $sort は、$push 後に配列の要素を並べ替えます。`{ $push: { scores: { $each: [85], $sort: -1 } } }`...
$match$match は、クエリ条件でドキュメントをフィルターし、一致したものだけを後続のステージに渡します。find() のクエリ述語に相当する集計版のフィルターです。$match はで...
$group$group は、指定したキー(_id)でドキュメントをグループ化し、グループごとに集計式($sum/$avg/$max など)を適用します。SQL の GROUP BY に相当す...
$lookup$lookup は、現在のコレクションと別のコレクションの間で左外部結合を行い、一致したドキュメントを配列として各結果に付加します。SQL の LEFT JOIN に相当し、複数ク...
$sum$sum は、グループ全体での指定フィールドの合計を計算するアキュムレータです(リテラル 1 を渡すと件数になります)。$group 内で合計・件数の集計に使い、$project ...
$project$project は射影ステージです。フィールドの選択・除外・新規計算を行い、各ドキュメントを新しい形に変換します。$addFields と違い、デフォルトでは _id と明示した...
$unwind$unwind は配列フィールドを分解し、要素ごとに 1 つのドキュメントを出力します(他のフィールドはすべてコピーされます)。グループ化・統計・ルックアップの前に配列を平坦化する...
$sort$sort は、指定したフィールドでパイプラインのドキュメントを並べ替えます: 1 が昇順、-1 が降順で、複数フィールドのソートに対応します。途中のステージが順序を変える可能性が...
$limit$limit は、パイプラインを現在の順序で最初の N 件に切り詰めます。件数だけを変え、内容は変えません。$sort と組み合わせると上位 N 件のクエリになります。$limit...
$skip$skip は、パイプラインの現在の順序で最初の N 件を捨て、残りをそのまま渡します。通常は $limit と組み合わせてオフセットページネーションに使います。スキップは無料では...
$count$count は、パイプラインに残っているドキュメント数を保持した { field: N } の形の単一ドキュメントを返します。$sum: 1 を使う $group の省略記法です...
$addFields$addFields は、各ドキュメントに新しいフィールドを追加したり既存フィールドを上書きしたりしつつ、他のフィールドはすべて保持します。指定外のフィールドをデフォルトで落とす ...
$set$set は $addFields の別名です: 各ドキュメントにフィールドを追加・上書きし、他はすべて保持します。パイプライン途中で計算値や定数、式の結果を付け加えるのに使います...
$replaceRoot$replaceRoot は、ドキュメント全体を指定した埋め込みドキュメントで置き換えます。detail のようなネストしたオブジェクトをトップレベルに持ち上げるのに一般的に使いま...
$replaceWith$replaceWith は $replaceRoot と似ていますが、式の結果が null や欠落でも失敗せず、元のドキュメントを保持します。可能なら持ち上げる、というシナリオに...
$sample$sample は、指定した数のドキュメントをランダムに選択します — サンプリング分析、テストデータ、ランダムピックに便利です。コレクション全体をスキャンしない場合があり、ランダ...
$documents$documents は、コレクションを読まずに、指定したリテラルドキュメントの配列をそのまま返します — パイプラインへのリテラル入力です。先頭ステージでなければならず、テストデ...
$sortByCount$sortByCount は $group と $sort の省略記法です: 式の値ごとにグループ化し、グループごとの件数を数えて、{ _id: value, count: N }...
$unset$unset は、ドキュメントから指定したフィールドを削除し、他はすべて保持します。{ $project: { field: 0 } } の省略記法で、複数フィールドを一度に削除で...
$bucket$bucket は、昇順の boundaries 配列で定義したバケットにドキュメントを分類し、バケットごとに { _id: lowerBound, count: N } を 1 ...
$bucketAuto$bucketAuto は、ドキュメントをほぼ均等な件数のバケットに分配します。境界は値の分布から自動計算され、手動の境界は不要です。granularity は境界を正規の数列にス...
$densify$densify は、欠落した中間のフィールド値でドキュメントを生成します。時系列の補間に典型的で、1 時間ごと・1 日ごとなどの固定ステップでギャップを埋めます。数値フィールドに...
$setWindowFields$setWindowFields は、パーティション内でウィンドウ計算 — 順位、移動平均、累計 — を行い、結果を各ドキュメントに書き戻します。出力フィールドにウィンドウ演算子(...
$facet$facet は、1 つのステージ内で複数のサブパイプラインを並行実行し、それぞれ同じ入力ドキュメントを処理して、結果をフィールドとしてまとめます: { name: [ 結果 ] ...
$geoNear$geoNear は、地理的な近さの順でドキュメントを出力し、パイプラインの先頭ステージである必要があります。コレクションにはジオスペーシャルインデックスが必須です。distanc...
$graphLookup$graphLookup は、コレクション上で再帰検索を行い、グラフの走査をエミュレートします: connectFromField の値から開始して、maxDepth に達するか一...
$merge$merge は、パイプラインの結果をターゲットコレクション(別データベースや別クラスターでも可)に書き込み、一致キーで既存ドキュメントを更新したり新しいドキュメントを挿入したりし...
$out$out は、パイプラインの結果を指定したコレクションに書き込み、以前の内容をすべて置き換えます。ターゲットがなければ自動作成されます。最終ステージでなければならず、$merge ...
$unionWith$unionWith は、パイプラインがこれまでに累積した結果と別のコレクション(同じコレクションでも可)のドキュメントを結合し、必要ならサブパイプラインでそのコレクションを前処理...
$redact$redact は、ドキュメントに埋め込まれた権限メタデータを使ってフィールドレベルでフィルターし、システム変数の $$KEEP、$$PRUNE、$$DESCEND を使います。$...
$collStats$collStats は、コレクションのストレージ統計 — ドキュメント数、データサイズ、インデックス情報、ストレージエンジンの詳細 — を単一のドキュメントで返します。容量計画や...
$indexStats$indexStats は、インデックスごとの使用統計 — 名前、アクセス回数、ミス回数、最終使用時刻 — をインデックスごとに 1 ドキュメントで返します。使われていないインデッ...
$avg$avg は、$group 内でグループ全体の指定フィールドの平均を、$project 内で配列要素の平均を計算するアキュムレータです。null や欠損した値は無視され、数値だけを...
$max$max は、$group 内でグループ全体の指定フィールドの最大値を、$project 内で配列の最大要素を返すアキュムレータです。比較は BSON の型順序に従うため、混在した...
$min$min は、$group 内でグループ全体の指定フィールドの最小値を、$project 内で配列の最小要素を返すアキュムレータです。$max と対称で、比較は BSON の型順序...
$push$push は、$group 中に各ドキュメントの式の結果を配列へ追加していくアキュムレータです。並び順は入力順に従います(通常は安定しません)。グループ内の詳細を 1 つのドキュ...
$addToSet$addToSet は、$group 中に各ドキュメントの式の結果を配列へ追加していくアキュムレータで、重複を自動的に除去します — 同じ値は 1 回だけ現れます。$push に似...
$first$first は、グループの最初のドキュメントのフィールドを返すアキュムレータです。入力順に依存するため、$group の前の $sort(MongoDB 5.2 以降は $gro...
$last$last は、グループの最後のドキュメントのフィールドを返すアキュムレータです — $first と対称で、同様に順序に依存します。代表的な用途は、グループごとの最新レコードの取...
$stdDevPop$stdDevPop は、グループ全体の指定フィールドの母標準偏差を計算するアキュムレータで、N-1 ではなく N で割ります。データが母集団全体を表す場合(学校全体の点数など)に...
$stdDevSamp$stdDevSamp は、グループ全体の指定フィールドの標本標準偏差を計算するアキュムレータで、N-1 で割ります。データがより大きな母集団の標本である場合(一般的なケース)に使...
$top$top は、指定したソート順序に従ってグループの先頭ドキュメントを返すアキュムレータです — 単一フィールドではなくドキュメント全体を返し、MongoDB 5.2 以降で利用でき...
$topN$topN は、指定したソート順序に従ってグループごとに上位 N 個のドキュメント(または式の値)を返すアキュムレータで、MongoDB 5.2 以降で利用できます。順序は $gr...
$bottom$bottom は、指定したソート順序に従ってグループの末尾ドキュメントを返すアキュムレータです — ドキュメント全体を返し、$top と対称で、MongoDB 5.2 以降で利用...
$bottomN$bottomN は、指定したソート順序に従ってグループごとに下位 N 個のドキュメント(または式の値)を返すアキュムレータで、$topN と対称で、MongoDB 5.2 以降で...
$count$count は、$group 内でドキュメント数を数えるアキュムレータで、MongoDB 5.0 以降で利用できます。{ $sum: 1 } の意味が明確になった同等形です。$c...
$firstN$firstN は、グループの先頭 N ドキュメント(入力順)のフィールドの配列を返すアキュムレータで、MongoDB 5.2 以降で利用できます。$topN と $top の関係...
$lastN$lastN は、グループの末尾 N ドキュメント(入力順)のフィールドの配列を返すアキュムレータで、$firstN と対称で、MongoDB 5.2 以降で利用できます。グループ...
$maxN$maxN は、グループ内のフィールドの上位 N 個の個別の最大値を配列で返すアキュムレータで、MongoDB 5.2 以降で利用できます。ソート指定は不要です — 大きい値から ...
$minN$minN は、グループ内のフィールドの下位 N 個の個別の最小値を配列で返すアキュムレータで、$maxN と対称で、MongoDB 5.2 以降で利用できます。ソート指定は不要で...
$accumulator$accumulator は、$group 内で JavaScript のコールバック — init・accumulate・merge・finalize — を使ってカスタム集計ロ...
$median$median は、グループ内の数値フィールドの中央値を返すアキュムレータで、MongoDB 7.0 以降で利用できます。中央値はソートしたときの真ん中の値で、外れ値に頑健です。m...
$percentile$percentile は、グループ内のフィールドの指定パーセンタイル(0〜100)の値を返すアキュムレータで、MongoDB 7.0 以降で利用できます。p 引数は単一の値または...
$concatArrays$concatArrays は、複数の配列を重複除去せずに 1 つに結合します。配列演算として $project や $addFields でよく使われ、MongoDB 8.1 以...
$setUnion$setUnion は、複数の配列の和集合を重複除去して返します。要素の順序は保証されません。集合演算として $project や $addFields でよく使われ、MongoD...
$concat$concat は、2 つ以上の文字列(または文字列に解決される式)を連結して 1 つの文字列にします。集計式の中で最もよく使われる文字列演算子で、名前の結合、住所の組み立て、出力...
$toUpper$toUpper は文字列を大文字に変換します。最も単純な文字列変換演算子で、比較の正規化や出力形式の統一によく使われます。文字列のみを受け付け、他の型はエラーになります(先に $...
$dateToString$dateToString は、フォーマットパターンを使って日付を文字列に整形します。集計パイプラインで日付を出力する標準的な方法です。パターンは %Y(年)、%m(月)、%d(日...
$add$add は集計式の中で加算を行います。複数の数値を足し合わせたり、日付にミリ秒数を加えたり、日付とミリ秒から新しい日付を返したりできます。$project、$addFields、...
$subtract$subtract は集計式の中で減算を行います。$add の対になる演算子です。引数はちょうど 2 つで、数値−数値は差、日付−日付はミリ秒、日付−ミリ秒はより前の日付を返します...
$multiply$multiply は集計式で複数の数値の積を計算します。引数は 2 要素以上の配列で渡します。$project、$addFields、$set で、明細合計(単価×数量)や通貨換...
$divide$divide は 2 つの引数(被除数と除数)で除算を行います。単価、一人当たりの値、比率などの計算によく使われ、たとえば 2 つの $sum 結果を割って比率を求めます。特筆す...
$mod$mod は 2 つの値を割った余りを返します。引数は被除数と除数の 2 つで、整数除算の余りを返します。ページング、周期性の検出、パリティ判定(注文 ID が奇数か偶数かを 2 ...
$abs$abs は単一の数値式の絶対値を返します。実績と目標の差、地理的なオフセットなどの距離・偏差・誤差の計算によく使われます。null または欠落した引数は null を返します。正...
$ceil$ceil は、与えられた数以上の最小の整数を返します。切り上げです。ページ計算や、切り上げが必要な容量見積もり(7.5 個なら在庫 8 個が必要、など)に使われます。null ま...
$floor$floor は、与えられた数以下の最大の整数を返します。切り捨てです。金額の切り捨て、下限の計算、値のバケット化(価格を 10 単位で下に丸めるなど)に使われます。null また...
$ln$ln は数値の自然対数(底 e)を返します。成長率の計算、データの平滑化、対数スケールへの変換(回帰分析前に価格の自然対数を取るなど)に使われます。null または欠落した引数は...
$log$log は、指定した底で数値の対数を返します。引数は値と底の 2 つです。$ln、$log10、$log2 と違い、底を第 2 引数で与えるため、$log: [8, 2] は 3...
$log10$log10 は数値の底 10 の対数を返します。桁数の確認、デシベル計算、データ圧縮(ページビューの常用対数を取って桁数を比較するなど)に使われます。null または欠落した引数...
$log2$log2 は数値の底 2 の対数を返します。二分探索の深さ、二分木の高さ、ビット幅の見積もり(数値に必要なビット数など)といった計算機科学の文脈で使われます。null または欠落...
$pow$pow は数値を累乗します。引数は底と指数の 2 つで、底の指数乗を返します。面積・体積の計算、複利計算、スケーリング(円の面積のために半径を 2 乗する、10 の累乗で値をシフ...
$sqrt$sqrt は単一の数値式の平方根を返します。幾何学、標準偏差風の計算、正規化(ユークリッド距離を計算する際の平方和の平方根など)に使われます。null または欠落した引数は nu...
$exp$exp は e の指定乗、つまり指数関数 e の x 乗を返します。e は約 2.71828 です。連続複利、指数平滑化、自然対数の逆変換に使われます。null または欠落した引...
$round$round は数値を丸め、任意で小数点以下の桁数を指定できます。値と任意の桁数引数を取り、0 または省略で整数に、正の桁数で小数を残し、負の桁数で 10 の位・100 の位などに...
$trunc$trunc は数値の小数部を 0 方向に切り捨て、任意で小数点以下の桁数を維持します。値と任意の桁数引数を取り、規則は $round と同じです。セント単位の切り捨て、表示値の準...
$sign$sign は数値の符号を返します。正は 1、負は -1、0 は 0 です。カテゴリ集計、上昇・下降の方向判定、データのバケット化(価格変動を上昇・下降・横ばいにマッピングするなど...
$sin$sin はラジアンで表した値の正弦を返します。周期信号の処理、座標変換、三角関数の計算(正弦を取る前に度をラジアンに変換するなど)に使われます。null または欠落した引数は n...
$cos$cos はラジアンで表した値の余弦を返します。ベクトルの射影、波形解析、回転の計算に使われます。null または欠落した引数は null を返し、NaN 入力は NaN を返し、...
$tan$tan はラジアンで表した値の正接を返します。傾きの計算、勾配の変換、角度の測定に使われます。null または欠落した引数は null を返し、NaN 入力は NaN を返し、±...
$asin$asin は数値のアークサインをラジアン単位で返します。入力は -1 から 1 の範囲でなければなりません。サイン値から角度を復元したり、座標変換に使われます。引数が null ...
$acos$acos は数値のアークコサインをラジアン単位で返します。入力は -1 から 1 の範囲に制限されます。コサイン値から角度を復元したり、2 つのベクトルのなす角を計算するのに使わ...
$atan$atan は数値のアークタンジェントをラジアン単位で返し、任意の実数を入力として受け付けます。傾きから角度への変換や方向の計算に使われ、例えば勾配から傾斜角を求めたり、高低差と水...
$atan2$atan2 は y 座標と x 座標から方位角をラジアン単位で返します。引数の順序は [y, x] です。4 つの象限すべてを正しく処理し、直交座標を極座標形式に変換するための主...
$degreesToRadians$degreesToRadians は入力に π/180 を掛けて、度をラジアンに変換します。$sin、$cos、$tan はラジアンを入力として受け取るため、先に変換しておけば ...
$radiansToDegrees$radiansToDegrees は入力に 180/π を掛けて、ラジアンを度に変換します。逆三角関数の $asin、$acos、$atan、$atan2 はすべてラジアンを返す...
$bitAnd$bitAnd は整数に対してビット単位の AND 演算を行います。MongoDB 6.3 以降で利用でき、整数の配列(または単一の数値)を受け付けます。権限ビットのチェック、フラ...
$bitOr$bitOr は整数に対してビット単位の OR 演算を行います。MongoDB 6.3 以降で利用でき、整数の配列(または単一の数値)を受け付けます。フラグビットの組み合わせや権限...
$bitXor$bitXor は整数に対してビット単位の XOR 演算を行います。MongoDB 6.3 以降で利用でき、整数の配列(または単一の数値)を受け付けます。XOR はビットが異なると...
$bitNot$bitNot は単一の整数に対してビット単位の NOT(2 の補数)を行います。オペランドを 1 つだけ取る唯一のビット演算子です。MongoDB 6.3 以降で利用でき、結果は...
$dateAdd$dateAdd は日付に指定した時間単位の量を加算し、新しい日付を返します。パイプライン内で期限日、更新日、締め切りなど相対日付を求める定番の演算子です。unit には year...
$dateSubtract$dateSubtract は日付から指定した時間単位の量を減算し、新しい日付を返します。$dateAdd の鏡像にあたる演算子です。会員の有効期限、クーポンの開始日、リテンション...
$dateFromParts$dateFromParts は year、month、day、hour、minute、second、millisecond などの数値部品から日付を組み立てます。$dateToP...
$dateToParts$dateToParts は日付を year、month、day、hour、minute、second、millisecond のドキュメントに分解します。$dateFromPar...
$dateDiff$dateDiff は 2 つの日付の差を指定した単位の整数で計算します。年齢、契約期間、滞在時間などの計算に最適です。unit には year、month、week、day、ho...
$dateTrunc$dateTrunc は日付を指定した単位の開始位置に切り捨て、新しい日付を返します。タイムスタンプを時・日・月などのバケットに揃えて統計を取るのに最適です。unit には yea...
$dateFromString$dateFromString は指定したフォーマットを使って文字列を日付に解析します。$dateToString の逆関数で、インポートした日付文字列やフロントエンドの日付文字列...
$dayOfMonth$dayOfMonth は日付の月内の日(1 から 31)を返します。日単位の統計でよく使われる式です。単純な日付式か、明示的な timezone を持つオブジェクトのどちらも受け...
$dayOfWeek$dayOfWeek は日付の曜日を整数で返します。1 が日曜日、7 が土曜日で、JavaScript の Date.getDay() と同じ規則です。曜日ベースのトラフィック統計...
$dayOfYear$dayOfYear は日付の年内の通算日(1 から 366)を返します。年間の進捗、季節分析、残り日数の計算などに便利です。数え始めは 1 で、平年は 365、うるう年は 366...
$isoDayOfWeek$isoDayOfWeek は ISO 8601 に従った曜日番号を返します。1 が月曜日、7 が日曜日で、日曜日が 1 の $dayOfWeek とは異なります。国際標準に従った...
$isoWeek$isoWeek は日付の ISO 8601 週番号(1 から 53)を返します。ISO の週は月曜日に始まり、最初の木曜日を含む週が第 1 週になります。日曜始まりで 0 を返し...
$isoWeekYear$isoWeekYear は日付の ISO 週が属する年を返します。$isoWeek と一緒に使います。ISO の週は年をまたぐことがあるため(12 月 31 日が翌年の第 1 週...
$millisecond$millisecond は日付のミリ秒部分(0 から 999)を返します。細かい精度の時刻抽出器です。単体で使うことは少ないですが、厳密な順序付け、重複排除、ミリ秒タイムスタンプ...
$minute$minute は日付の「分」部分(0〜59)を返します。分単位のトラフィック統計や監視メトリクス、ウィンドウのラベル付けに重宝します。戻り値はゼロ埋めしない整数です。timezo...
$month$month は日付の月(1〜12)を返します。月次レポートで最もよく使われる式の 1 つです。$year と組み合わせて $group のキーにすると、年月のディメンションを作れ...
$second$second は日付の「秒」部分(0〜59)を返します。秒単位のラベルやタイムスタンプの検証に便利です。戻り値はゼロ埋めしない整数で、2 桁の出力には $dateToString...
$week$week は米国式の週番号(0〜53)を返します。週は日曜始まりで、週 1 は年の最初の日曜から始まり、それより前の日付は週 0 になります。ISO 規格の $isoWeek と...
$year$year は日付の年(例: 2026)を返す、もっとも基本的な日付抽出演算子です。$month や $week と組み合わせて複数レベルの group キーにしたり、年単位のアー...
$hour$hour は日付の「時」部分(0〜23)を返します。時間単位のトラフィック分析やアラートウィンドウ、時間別レポートでよく使われます。戻り値は 24 時間表記の整数です。タイムゾー...
$split$split は区切り文字で文字列を部分文字列の配列に分割します。CSV 的なテキストやタグリスト、パスの分解に欠かせない演算子です。区切り文字は空でない文字列である必要があり、空...
$strcasecmp$strcasecmp は 2 つの文字列を大文字小文字を無視して比較し、-1・0・1 を返します。ソートやグループ化、条件分岐に便利です。文字列のみを受け付け、他の型はエラーにな...
$substr$substr は指定した位置から指定した長さの部分文字列を取り出します。MongoDB 3.4 以降、$substr は $substrCP の別名で、位置を Unicode コ...
$substrBytes$substrBytes は UTF-8 バイト位置で部分文字列を取り出します。start と length の両方がバイト数です。純粋な ASCII テキスト(バイト数 = 文字...
$substrCP$substrCP は Unicode コードポイント(おおよそ文字数)で位置を数えて部分文字列を取り出します。中国語・日本語・絵文字のようなマルチバイト文字でも完全に安全で、ユー...
$regexFind$regexFind は Perl 互換の正規表現で文字列を検索し、最初のマッチをドキュメント(match・idx・captures フィールドを持つ)として返します。マッチしなけ...
$regexFindAll$regexFindAll は正規表現で文字列を検索し、すべてのマッチを配列で返します。各要素は match・idx・captures フィールドを持ち、マッチがなければ空配列にな...
$regexMatch$regexMatch は文字列が正規表現にマッチするかを判定し、true か false を返します。もっとも軽量な正規表現演算子で、フィルタやデータ検証に最適です。「マッチする...
$regexReplace$regexReplace は正規表現でテキストにマッチし、指定した文字列に置換します。パイプライン内で高度なテキストクリーニングを行うツールです。置換文字列では $1・$2 でキ...
$indexOfBytes$indexOfBytes は部分文字列が最初に現れる位置を UTF-8 バイト単位のインデックスで返します。見つからなければ -1 です。任意の start と end で検索範...
$indexOfCP$indexOfCP は部分文字列が最初に現れる位置をコードポイント(文字数)単位で返します。見つからなければ -1 です。文字単位で数えるため人間の感覚と一致し、中国語や絵文字で...
$trim$trim は文字列の両端から空白(スペース・タブ・改行)を除去します。chars を指定すると、任意の文字セットを除去できます。ユーザー入力やログ行、CSV フィールドのクリーニ...
$ltrim$ltrim は文字列の左端(先頭)から空白、または chars で指定した文字セットを除去します。$trim の左側バリアントです。先頭のスペースやインデント、接頭記号の除去に便...
$rtrim$rtrim は文字列の右端(末尾)から空白、または chars で指定した文字セットを除去します。$trim の右側バリアントです。末尾のスペースや不要な改行、末尾のセパレータの...
$toLower$toLower は文字列を小文字に変換する、基礎的な正規化演算子です。保存形式の統一や、大文字小文字を無視した検索キー(インデックス付き)の作成、ユーザー入力のクリーニングに使わ...
$strLenBytes$strLenBytes は文字列の UTF-8 バイト長を返します。ストレージ見積りやフィールドサイズ制限の定番演算子です。純粋な ASCII ではバイト数と文字数が一致しますが...
$strLenCP$strLenCP は文字列の Unicode コードポイント数を返します。実質、人が認識する文字数です。中国語・日本語・絵文字もそれぞれ 1 として数えるため、ニックネームの文字...
$replaceOne$replaceOne は文字列内の部分文字列の最初の出現を、指定した置換文字列に置き換えます。タイプミスの修正や接頭語の差し替えに便利です。find は空でない文字列でなければな...
$replaceAll$replaceAll は、部分文字列の出現箇所をすべて指定の文字列に置き換えます。一括データクリーニングや区切り文字の統一に最適です。find が空文字列だとエラーになり、省略し...
$binarySize$binarySize はバイナリデータ(BinData)のバイト数を返します。文字列を渡すと UTF-8 のバイト長を返します。添付ファイルのサイズ監視、アップロード上限のチェッ...
$arrayElemAt$arrayElemAt は、配列内の指定したインデックス位置にある要素を返します。集計式で位置に基づいて配列へアクセスするための基本演算子で、注文の先頭アイテム、配列の末尾要素、...
$concatArrays$concatArrays は 2 つ以上の配列を連結して 1 つの新しい配列にします。タグリストの統合、履歴レコードの結合、ページングデータの連結などによく使われます。すべての引...
$filter$filter は配列を走査し、条件を満たす要素だけを残した新しい配列を返します。集計式の中で配列をフィルタリングする定番の演算子です。代表的な用途は、注文の出荷済みアイテムだけを...
$indexOfArray$indexOfArray は、配列内で最初に現れる値のインデックスを返します。見つからない場合は -1 を返します。タグが存在するかのチェックや、$arrayElemAt で読み...
$isArray$isArray は、式が配列に解決されるかを表すブール値を返します。$cond 内での型分岐によく使われます。フィールドがスカラーか配列のどちらかを取り得る場合、まず $isAr...
$map$map は配列を反復し、各要素を in 式に通して、同じ長さの新しい配列に結果を集めます。集計式で最も使われる関数型演算子です。代表的な用途は、注文の全アイテムに税を適用する、文...
$size$size は配列の要素数を 0 以上の整数として返します。最も一般的な配列のメタデータ演算子で、注文アイテム数のカウント、空配列の検出、$expr を使った $match 内での...
$slice$slice は配列の一部を取り出します。2 引数形式は先頭から n 個(n が負なら末尾から n 個)を、3 引数形式は n 個スキップしてから指定件数を取ります。コメントのペー...
$reduce$reduce は配列を 1 つの値に畳み込みます。関数型言語の reduce / fold に相当する集計版です。initialValue と in 式を取り、in 内では $$...
$reverseArray$reverseArray は配列の要素の順序を反転して新しい配列を返します。時系列の昇順レコードを降順に反転したり、最新メッセージを先頭に持ってきたりするのに使います。反転される...
$sortArray$sortArray は配列内の要素をソートし、MongoDB 5.2 で新しく追加されました。スカラー配列には 1(昇順)や -1(降順)を指定し、オブジェクトの配列には { f...
$objectToArray$objectToArray はドキュメントをキーと値のペアの配列に変換します。各要素は { k: 'フィールド名', v: 'フィールド値' } の形になります。フィールド名が動...
$arrayToObject$arrayToObject はキーと値のペアの配列をドキュメントに戻します。$objectToArray の逆変換です。入力は { k, v } オブジェクトの配列か、[ 'フィ...
$range$range は開始値から終了値未満までの整数シーケンスを、オプションのステップで生成します。$dateAdd との組み合わせによる日付シーケンス、ページングのページ番号生成、テス...
$zip$zip は複数の配列を位置ごとにまとめてグループにします。各グループは全入力から同じインデックスの要素を持ち、配列の縦方向の整列です。既定では最も短い配列に切り詰められます。us...
$allElementsTrue$allElementsTrue は配列のすべての要素が真のときだけ true を返します。空の配列は、全称量化の慣例に従って true を返します。代表的な用途は、注文の全アイテ...
$anyElementTrue$anyElementTrue は、配列の少なくとも 1 つの要素が真のとき true を返します。空の配列は false を返します。代表的な用途は、ユーザーに配送先住所が 1 ...
$setDifference$setDifference は、最初の配列には含まれるが 2 番目の配列には含まれない要素を、重複を除去して返します。代表的な用途は、ユーザーが購入したがお気に入り登録していない...
$setEquals$setEquals は、2 つ以上の配列が集合として等しいかを、順序と重複を無視して判定します。代表的な用途は、2 つの権限リストが一致するかの確認や、設定と既定値の比較です。複...
$setIntersection$setIntersection は、すべての入力配列に含まれる要素を、重複を除去して返します。代表的な用途は、ユーザーと友人の共通の興味タグや、複数のフィルタ条件に該当する共通商...
$setIsSubset$setIsSubset は、最初の配列のすべての要素が 2 番目の配列にも含まれるか、つまり最初の集合が 2 番目の部分集合かを判定します。代表的な用途は、ユーザーの権限が操作に...
$setUnion$setUnion はすべての入力配列を統合し、要素の重複を除去して和集合を返します。代表的な用途は、複数ソースのタグの統合や、異なるチャネルで集めたリード ID の集約です。2 ...
$cond$cond は if-then-else の三項ロジックを実装し、集計式で最も基本的な分岐演算子です。{ if, then, else } のオブジェクト形式と [ 条件, tru...
$ifNull$ifNull は、式が null に解決されるかフィールドが欠落している場合に代替値を返します。空データの処理で最もよく使われる演算子です。代表的な用途は、プロフィールが欠落して...
$switch$switch は複数の case 分岐を順に評価し、最初に真になった case の then 結果を返します。プログラミング言語の switch 文と同じような動きです。どの分岐...
$convert$convert は値を指定の BSON 型にキャストし、型変換の代表的な入口です。to パラメータには double、string、objectId、bool、date、int、...
$toBool$toBool は値をブール値に変換します。数値 0 は false に、0 以外の数値は true になります。文字列 'true' と 'false' は直接変換され、日付は ...
$toDate$toDate は値を BSON の Date に変換します。日付はそのまま通し、数値はミリ秒タイムスタンプとして扱い、ISO 8601 形式の文字列を解析します。代表的な用途は、...
$toDecimal$toDecimal は値を Decimal128 に変換します。Decimal128 は、金額や精度が重要な演算向けの高精度 10 進型で、double の 2 進浮動小数点誤差...
$toDouble$toDouble は値を BSON の double に変換します。数値、数値文字列、ブール値、日付を受け付け、null は null のままです。代表的な用途は、CSV からイ...
$toInt$toInt は値を 32 ビット符号付き整数(BSON int)に変換します。数値、数値文字列、ブール値を受け付け、null は null のままです。代表的な用途は、外部システ...
$toLong$toLong は値を 64 ビット符号付き整数(BSON long)に変換します。int よりはるかに広い範囲を持ち、タイムスタンプや ID などの大きな整数に最適です。数値、数...
$toObjectId$toObjectId は 24 文字の 16 進文字列を ObjectId に変換します。結合で最もよく使われる変換です。代表的な用途は、CSV や API からインポートした文...
$toString$toString は値を文字列に変換します。数値、日付、ブール値、ObjectId などをきれいに変換でき、null は null のままです。代表的な用途は、$concat の...
$cmp$cmp は 2 つの値を比較し、未満・等しい・より大きいに対して -1、0、1 を返します。式形式の比較演算子で、$cond 内でのカスタムソートキーやサイズチェックによく使われ...
$eq$eq は式形式の等価比較で、2 つの引数を取りブール値を返します。$project や $match 内の $expr などの式コンテキストで動作し、クエリ演算子とは構文が異なり...
$gt$gt は式形式の「より大きい」比較です。2 つの引数を取り、最初が 2 番目より大きいとき true を返します。$project や $expr などの式コンテキストで使われ、...
$gte$gte は式形式の「以上」比較です。2 つの引数を取り、最初が 2 番目以上のとき true を返します。閾値チェックや範囲フィルタリングに使われ、例えば売上が保証最低額に達した...
$lt$lt は式形式の「より小さい」比較です。2 つの引数を取り、最初が 2 番目より小さいとき true を返します。数値や日付の順序判定に使われ、例えば在庫が警告レベルを下回る商品...
$lte$lte は式形式の「以下」比較です。2 つの引数を取り、最初が 2 番目以下のとき true を返します。上限閾値のチェックや資格判定に使われ、例えば金額がクーポン上限内に収まる...
$ne$ne は式形式の不等価比較です。2 つの引数を取り、異なるとき true を返します。特定の値を除外したり、異なるレコードを見つけたりするのに使われ、例えばステータスが「クローズ...
$literal$literal は値を式として解釈せずに返します。$ で始まる文字列をプレーンテキストとして出力したい場合や、数値リテラルの型を正確に保ちたい場合に使います。例えば { $pro...
$let$let は集計式内でローカル変数を定義し、in 式で使います。複雑な部分式の繰り返し評価を避けるために使われます。構文は { $let: { vars: { name: 式 },...
$getField$getField はドキュメントからリテラル名でフィールドを取得します。$ で始まる名前や特殊文字を含む名前でも、フィールドパスとして解釈しません。構文は { $getField...
$setField$setField はドキュメントに名前付きフィールドを追加・更新し、入力は変更せず新しいドキュメントを返します。構文は { $setField: { field: フィールド名,...
A
aggregate()aggregate() はドキュメントをグループ化・計算・再形成する多段パイプラインを実行します。例: `db.users.aggregate([{ $group: { _id: ...
allowDiskUse()allowDiskUse() は、sort() など大きなメモリを要求するブロッキング操作で、カーソルがディスクに溢れ出せるようにします: `db.users.find().sor...
ArrayArray は任意の BSON 値(ネストされた配列やドキュメントを含む)の順序付きリストです。マッチングはメンバーシップで、`{ tags: 'mongodb' }` は tag...
B
bulkWrite()bulkWrite() は1回の呼び出しで複数の書き込み操作を混在して実行します: insertOne、updateOne、updateMany、replaceOne、delete...
batchSize()batchSize() はカーソルがサーバーから1バッチあたりに取得するドキュメント数を設定します: `db.users.find().batchSize(100)`。ラウンドトリ...
BooleanBoolean は true または false を保持します。フラグやトグル(isActive、isDeleted)に最適です。フィールド値を直接一致させてクエリします。フィール...
BinaryBinary 型は画像・ファイル・暗号化データ・UUID を格納し、Base64 文字列よりコンパクトです。サブタイプ(0: 汎用、2: 旧バイナリ、3: レガシー UUID、4:...
C
countDocuments()countDocuments() はフィルタに一致するドキュメントの件数を数えます。例: `db.users.countDocuments({ age: { $gte: 18 } ...
createIndex()createIndex() はクエリを高速化する単一のインデックスを作成します。例: `db.users.createIndex({ age: 1 }, { unique: tru...
createIndexes()createIndexes() は1回の呼び出しで複数のインデックスを作成します。例: `db.users.createIndexes([{ key: { age: 1 } }, ...
count()count() は現在のカーソルが返すであろうドキュメントの件数を数えます: `db.users.find({ age: { $gt: 20 } }).count()`。カーソルに...
collation()collation() はクエリの文字列比較規則を設定します: `db.users.find({ name: 'alice' }).collation({ locale: 'zh'...
close()close() はカーソルを早期に閉じ、サーバー側のリソースを解放します: `db.users.find().close()`。残りのドキュメントが不要になったときに呼び、サーバー...
currentOpcurrentOp は現在実行中の操作を一覧表示し、低速クエリや長時間実行(ブロックされた書き込み、開いたトランザクション)の診断に使います。各エントリは opid、client、...
collModcollMod は既存コレクションの設定を調整します。TTL インデックスの有効期限(expireAfterSeconds)、スキーマバリデーター、インデックスオプションなどです。...
createIndexescreateIndexes はコレクションにインデックスを作成します。単一フィールド、複合、ユニーク、TTL、テキスト、地理空間に対応します。mongosh では通常 db.col...
createUsercreateUser はロール付きのデータベースユーザーを作成します。mongosh では db.createUser({ user, pwd, roles }) を使います。ロー...
D
deleteOne()deleteOne() はフィルタに一致する最初のドキュメントを削除します。複数一致した場合も、自然順序で最初の1件だけが削除されます。結果には deletedCount(0 また...
deleteMany()deleteMany() はフィルタに一致するすべてのドキュメントを削除し、deletedCount を返します。古いログの一掃やユーザーの無効化など、一括クリーンアップの主力です...
distinct()distinct() はコレクション内の指定フィールドのすべての一意な値を返します。例: `db.users.distinct('address.city')`。完全なドキュメント...
dropIndex()dropIndex() は特定のインデックスを削除し、名前またはキーを受け取ります。例: `db.users.dropIndex('age_1')`。インデックスを削除すると、依存...
dropIndexes()dropIndexes() は1つ以上のインデックスを削除します。例: `db.users.dropIndexes()` は _id 以外のすべてのインデックスを削除し、名前の配列...
drop()drop() はコレクション全体を削除します。すべてのドキュメント、インデックス、メタデータを含みます。例: `db.users.drop()`。ドキュメントのみを削除する del...
DateDate は MongoDB の日時型で、内部では Unix エポックからの64ビットのミリ秒数として格納されます。ISO 日付文字列(new Date("2026-09-25")...
Decimal128Decimal128 は MongoDB の高精度小数型で、IEEE 754-2008 の十進浮動小数点標準に基づき、34桁の有効十進数字を持ちます。金額、レート、厳密な演算が必要...
DoubleDouble は MongoDB のデフォルトの数値型で、64ビットの IEEE 754 浮動小数点数、およそ ±1.8×10^308 です。mongosh の裸の数値(3.14 ...
dropUserdropUser はデータベースからユーザーを削除します。ユーザーは直ちに認証できなくなり、操作は不可逆です(再作成は createUser)。mongosh では db.drop...
dbStatsdbStats は現在のデータベースの統計(コレクション数、ドキュメント数、データサイズ、インデックスサイズ、ストレージ使用量)を返し、容量計画と監視に使います。mongosh で...
E
estimatedDocumentCount()estimatedDocumentCount() はコレクションのメタデータからドキュメント総数を推定します。例: `db.users.estimatedDocumentCount...
explain()explain() はクエリの実行プランを明らかにします: `db.users.find({ age: { $gt: 20 } }).explain('executionStats...
F
find()find() は条件に一致するドキュメントをクエリし、カーソル(Cursor)を返します。最も基本的な読み取りメソッドで、第1引数がクエリの述語、第2引数が返すフィールドを制御する...
findOneAndUpdate()findOneAndUpdate() はフィルタに一致する最初のドキュメントを更新し、そのドキュメント自体を返します。更新前か更新後かは `returnDocument`: 'be...
findOneAndDelete()findOneAndDelete() はフィルタに一致する最初のドキュメントを削除し、削除されたドキュメント自体を返します。例: `db.users.findOneAndDelet...
findOneAndReplace()findOneAndReplace() はフィルタに一致する最初のドキュメントを置換ドキュメントに入れ替え、置換前または置換後のドキュメントを返します。例: `db.users.f...
findOne()findOne() はフィルタに一致する最初のドキュメントを、カーソルではなくドキュメントとして直接返します。例: `db.users.findOne({ name: 'Alice...
forEach()forEach() はカーソル内のすべてのドキュメントに対してコールバックを実行します。例: `db.users.find().forEach(function(doc) { pr...
findfind は MongoDB のクエリコマンドです。mongosh では通常 db.collection.find(filter, projection) のヘルパーを使います。生...
G
getIndexes()getIndexes() はコレクションのすべてのインデックスを返します。例: `db.users.getIndexes()`。各エントリはインデックス名、キー、一意性フラグを表示...
grantRolesToUsergrantRolesToUser は既存ユーザーにロールを追加します。増分的で、現在のロールをすべて維持します(updateUser の一括置換とは異なります)。mongosh で...
H
hasNext()hasNext() はカーソルにまだ次のドキュメントがあるかを報告します: `while (db.users.find().hasNext()) { ... }`。カーソルを進めず...
hint()hint() はクエリに特定のインデックスを使うよう強制します: `db.users.find({ age: { $gt: 20 } }).hint({ age: 1 })`。イン...
I
insertOne()insertOne() は単一のドキュメントをコレクションに挿入します。ドキュメントに _id が無い場合、MongoDB が ObjectId を自動生成します。結果には ins...
insertMany()insertMany() は1回の呼び出しで複数のドキュメントを挿入します。例: `db.users.insertMany([{ name: 'A' }, { name: 'B' ...
indexStats()indexStats() はインデックスごとの使用統計を報告します。例: `db.users.indexStats()` では、各インデックスのアクセス数、ヒット/ミスの集計などを...
Int32Int32 は符号付き32ビット整数で、-2147483648 から 2147483647 の範囲です。mongosh では 42 のような裸の数値は Double になるため、整...
insertinsert は低レベルの挿入コマンドで、通常 mongosh の db.collection.insertOne() / insertMany() にラップされています。生の形式...
J
JavaScriptJavaScript 型はドキュメント内に JS コードを格納し、`$where` を通じてサーバー側で実行されます(ドキュメントごとに実行)。`$where` はインデックスを使...
L
limit()limit() は find() が返すドキュメント数を上限で制限します: `db.users.find({ age: { $gt: 20 } }).limit(5)`。カーソルに...
LongLong は符号付き64ビット整数(BSON 型 int64)で、およそ ±9.2×10^18 です。`Long(42)` または別名の `NumberLong(42)` で構築し...
logoutlogout は現在の接続の認証セッションを終了し、ユーザーをサインアウトします。mongosh では db.logout() を呼びます。典型的な用途は、スクリプトや共有接続での...
listCollectionslistCollections はデータベースのコレクションをそのオプション(バリデーター、照合、TTL など)付きで一覧表示します。mongosh では名前のみなら db.get...
M
map()map() はカーソル内のすべてのドキュメントに変換を適用し、結果を配列として返します。例: `db.users.find().map(function(u) { return u...
maxTimeMS()maxTimeMS() はカーソル操作が実行できる時間をミリ秒単位で制限します: `db.users.find().maxTimeMS(5000)`。制限を超えるとサーバーは操作を...
MinKeyMinKey は他のすべての値より小さい特別な BSON 型で、MaxKey の対です。シャードキー設計(データを最初のチャンクに強制する)、ソートの番兵、アグリゲーションのプレー...
MaxKeyMaxKey は他のすべての値より大きい特別な BSON 型で、MinKey の対です。シャードキー設計(データを最後のチャンクに押し込む)、ソートの番兵、アグリゲーションのプレー...
N
next()next() はカーソルの次のドキュメントを返し、カーソルを進めます: `db.users.find().next()`。カーソルを使い果たした後に呼ぶとエラーを投げるため、has...
noCursorTimeout()noCursorTimeout() はカーソルのサーバー側アイドルタイムアウトを無効にします: `db.users.find().noCursorTimeout()`。デフォルトで...
NullNull はフィールドが空の値を保持していることを意味し、フィールドが無いこととは区別されます。`{ field: null }` のようなクエリは、null 値とフィールド無しの...
O
ObjectIdObjectId は MongoDB のデフォルトの _id 型です。12バイトの一意な識別子で、4バイトのタイムスタンプ + 5バイトのランダム + 3バイトのカウンタで構成され...
Object (Document)Object はネストされたサブドキュメントです。MongoDB は自己記述的なモデルのために任意の深さでネストできます。ネストしたフィールドにはドットパスでアクセスし、クエリでは...
P
pingping は MongoDB サーバーが到達可能で応答するかを確認し、成功時は { ok: 1 } を返します。最もシンプルなヘルスチェックコマンドで、スクリプト起動時の接続確認や...
profileprofile はデータベースプロファイラを切り替えます。レベル 0 はオフ、1 は遅い操作のみ記録(slowms 超)、2 はすべて記録します。記録された操作は system.p...
R
replaceOne()replaceOne() はフィルタに一致する最初のドキュメントを、まったく新しいドキュメントに置き換えます。第2引数に更新演算子を使う updateOne() とは異なり、ここで...
renameCollection()renameCollection() はコレクションの名前を変更します。例: `db.users.renameCollection('members')`。データとインデックスはリ...
Regular ExpressionRegular Expression はクエリのパターンマッチング用の BSON 型で、`{ field: /pattern/ }` と同等です。PCRE 構文とフラグ(i 大文字...
runCommand()db.runCommand() は mongosh で任意のデータベースコマンドを実行します。専用ヘルパーのない低レベルコマンド(serverStatus、collStats、cu...
renameCollectionrenameCollection はコレクションをデータベース内・データベース間でリネームし、admin データベースに対して実行する必要があります(db.adminCommand...
revokeRolesFromUserrevokeRolesFromUser は指定したロールをユーザーから取り除き、残りは保持します。剥奪は即座に反映され、すべてのロールが取り除かれた場合、ユーザーは認証のみ可能にな...
S
stats()stats() はコレクションの統計を返します。例: `db.users.stats()` では、ドキュメント数、コレクションサイズ、ストレージサイズ、インデックス数とサイズ、シャ...
skip()skip() はカーソルの最初の N 件を破棄します: `db.users.find().sort({ age: 1 }).skip(10)`。limit() と組んでページングに...
sort()sort() は指定したフィールドでカーソルの結果を並べ替えます: `db.users.find().sort({ age: 1, name: -1 })`。値の 1 は昇順、-1...
size()size() はカーソル内のドキュメント数を返します: `db.users.find().size()`。意味論はおおむね count() と同じですが、size() は適用済みの...
StringString は MongoDB で最も一般的なフィールド型で、UTF-8 テキストを保持します。`$eq` で完全一致、`$regex` でパターン一致します。全文検索には te...
T
toArray()toArray() は find() 形式のカーソルが参照するすべてを取得し、JavaScript の配列として返します: `db.users.find({ age: { $gt:...
tailable()tailable() はカーソルをテイル可能としてマークします。例: `db.logs.find().tailable()`。データが尽きたときに閉じるのではなく、テイル可能カーソ...
tryNext()tryNext() はカーソルの次のドキュメントの取得を試み、終端では投げる代わりに null を返します: `const doc = db.users.find().tryNex...
TimestampTimestamp は MongoDB の内部型で、4バイトの Unix 秒と4バイトのインクリメントからなる64ビット値です。レプリカセットの oplog、Change Stre...
U
updateOne()updateOne() はフィルタに一致する最初のドキュメントを更新します。複数一致した場合も最初の1件(自然順序)だけが更新されます。変更は更新演算子($set/$inc/$pu...
updateMany()updateMany() はフィルタに一致するすべてのドキュメントを更新します。例: `db.users.updateMany({ age: { $lt: 18 } }, { $s...
updateUserupdateUser は既存ユーザーを変更します。パスワードのリセット、ロールの置換、customData の更新などです。渡したフィールドのみが変更されますが、ロールは新しいリス...
V
validate()validate() はコレクションの構造的な整合性をチェックします。例: `db.users.validate({ full: true })`。コレクションの BSON ドキュ...
W
watch()watch() はコレクションの変更を監視し、Change Stream を返します。例: `db.users.watch([{ $match: { 'operationType'...
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%