Null (空の値)

最終更新:2026-10-09

Null (空の値)

Null はフィールドが空の値を保持していることを意味し、フィールドが無いこととは区別されます。`{ field: null }` のようなクエリは、null 値とフィールド無しの両方に一致します。区別するには `$exists` と組み合わせます。慣例: null = 明示的に空、無し = 一度も設定されていない。

カテゴリBSON 型
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ field: null }
db.users.find({ field: null })
db.users.find({ field: { $eq: null, $exists: true } })

戻り値:null 値そのもの。クエリでは一致するドキュメントを返します

▶ 例

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

// Null: null 値とフィールド無し
use shop
db.users.find({ phone: null })
db.users.find({ phone: { $eq: null, $exists: true } })

出力:

// 1つ目: phone が null または無しのユーザー。2つ目: phone が null のもののみ

📌 注意事項

さらなる実践ケースを近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Qnull のクエリはフィールドが無いドキュメントも返しますか?
A返します。{ field: null } は null 値とフィールド無しの両方に一致します。
Qnull は空文字列 '' と同じですか?
A違います。'' は文字列値で、null は空です。一方へのクエリが他方に一致することはありません。
Qフィールドが null のドキュメントだけに一致させるには?
A{ field: { $eq: null, $exists: true } } を使い、$exists でフィールド無しを除外します。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%