$mul (乗算)

最終更新:2026-10-09

$mul (乗算)

$mul は、フィールドの値を指定した係数で乗算します。`{ $mul: { price: 0.9 } }` で 10% 引きになり、`{ $mul: { quantity: 2 } }` で 2 倍になります。フィールドが存在しない場合は 0 倍として扱われるため、0 で作成されます。数値以外のフィールドはエラーになります。価格や重さのスケーリングに便利なアトミックな演算です。

カテゴリフィールド更新
MongoDB バージョン2.6+
例の言語mongosh(シェル)

📝 構文

{ $mul: { <field>: <factor> } }

⚙️ パラメータ

フィールド乗算する数値フィールド。
倍数乗数。小数や負の値も指定できます。

戻り値:更新結果

▶ 例

以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):

// $mul: 価格を 10% 引きにする
// 100 が 90 になる
db.products.updateOne(
  { _id: 1 },
  { $mul: { price: 0.9 } }
)

// 数量を 2 倍にする
db.products.updateOne(
  { _id: 2 },
  { $mul: { qty: 2 } }
)

出力:

// price は 0.9 倍、qty は 2 倍になる。存在しないフィールドは 0 で作成される

📌 注意事項

📚 関連チュートリアル

❓ よくある質問

Q$mul の対象フィールドが存在しない場合は?
A0 倍として扱われ、フィールドが 0 で作成されます。
Q$mul は浮動小数点数を扱えますか?
Aはい。精度は BSON の型に依存します。
Q$mul と $inc の違いは?
A$inc は加算・減算、$mul は乗算・除算を行います。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%