$pop (先頭・末尾の削除)

最終更新:2026-10-09

$pop (先頭・末尾の削除)

$pop は、配列の先頭(-1)または末尾(1)の要素を削除します。`{ $pop: { queue: -1 } }` で先頭から、`{ $pop: { queue: 1 } }` で末尾から削除します。空の配列には影響しません。位置でしか削除できません — 値で削除するには $pull を使います。キュー、スタック、最近のメッセージ一覧などに便利です。

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

📝 構文

{ $pop: { <array field>: <-1 or 1> } }

⚙️ パラメータ

配列フィールド取り出す配列フィールド。
方向-1 は最初の要素を、1 は最後の要素を削除します。

戻り値:更新結果

▶ 例

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

// $pop: キューの先頭を削除
// -1 は先頭、1 は末尾
db.tasks.updateOne(
  { _id: 1 },
  { $pop: { queue: -1 } }
)

// 末尾を削除(スタックの pop)
db.tasks.updateOne(
  { _id: 1 },
  { $pop: { queue: 1 } }
)

出力:

// queue は先頭または末尾から 1 要素失われる

📌 注意事項

📚 関連チュートリアル

❓ よくある質問

Q$pop で特定の値を削除できますか?
Aいいえ。位置でしか削除できません。値で削除するには $pull を使います。
Q$pop には -1 か 1 しか指定できませんか?
Aはい。他の値は不正です。
Q空の配列で $pop を使うとエラーになりますか?
Aいいえ。空の配列では何も起きません。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%