$type (BSON 型)

最終更新:2026-10-09

$type (BSON 型)

$type は、フィールドの値が指定した BSON 型であるドキュメントに一致します。`{ age: { $type: 'int' } }` は age が 32 ビット整数のドキュメントに一致します。型エイリアス(string、object、array、date、double など)または数値コード(1 = double、2 = string)を使えます。文字列「21」と数値の 21 は別の型です。よくある混乱ポイントです。

カテゴリ要素と評価
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ <field>: { $type: <BSON type> } }

⚙️ パラメータ

フィールド型をテストするドキュメントフィールド。
BSON 型型の別名またはコード(例: 'int'、'string'、'date'、'array')。

戻り値:一致するドキュメントのカーソル

▶ 例

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

// $type: age が整数のユーザー
// int は 32 ビット整数
db.users.find({ age: { $type: 'int' } })

// 複数型: int または double
db.users.find({ age: { $type: ['int', 'double'] } })

出力:

// age が int のユーザーを返す。2 つ目のクエリは int または double に一致

📌 注意事項

📚 関連チュートリアル

❓ よくある質問

Qよく使う $type エイリアスは?
Adouble、string、object、array、binData、objectId、bool、date、null、regex、int、long、decimal、timestamp などです。
Q日付型フィールドのクエリはどう書きますか?
A{ updatedAt: { $type: 'date' } } です。
Q$type は null に一致できますか?
Aはい。'null' はフィールド値が null のドキュメントに一致します(フィールドが存在する必要があります)。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%