$push (配列に追加)

最終更新:2026-10-09

$push (配列に追加)

$push は、配列の末尾に 1 つまたは複数の要素を追加します。`{ $push: { items: 'pen' } }` のように使い、複数の値を一度に追加するには $each と組み合わせます。さらに $position(挿入位置)、$slice(長さの上限)、$sort(並び順)と組み合わせて高度な配列管理ができます。最もよく使われる配列更新演算子です。

カテゴリ配列更新
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ $push: { <array field>: <value> } }

⚙️ パラメータ

配列フィールド追加先の配列フィールド。
値追加する値、または { $each: [...] } 形式。

戻り値:更新結果

▶ 例

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

// $push: 要素を追加
// 重複は許可される
db.carts.updateOne(
  { _id: 1 },
  { $push: { items: 'pen' } }
)

// 複数を一度に追加
// $each が必要
db.carts.updateOne(
  { _id: 1 },
  { $push: { items: { $each: ['book', 'ruler'] } } }
)

出力:

// items に pen、続いて book と ruler が追加される。重複は許可される

📌 注意事項

📚 関連チュートリアル

❓ よくある質問

Q$push と $addToSet の違いは?
A$push は追加し、重複を許可します。$addToSet は重複を先に排除します。
Q$push で特定の位置に挿入できますか?
Aはい。$position でインデックスを指定します。
Q$push で配列の長さを制限できますか?
Aはい。$slice を使います。たとえば最新 10 件だけを保持できます。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%