$toBool (ブール値への変換)

最終更新:2026-10-09

$toBool (ブール値への変換)

$toBool は値をブール値に変換します。数値 0 は false に、0 以外の数値は true になります。文字列 'true' と 'false' は直接変換され、日付は true になり、null は null のままです。代表的な用途は、API から受け取った 0/1 フラグをブールフィールドに正規化したり、真の表現を統一したりすることです。to: bool の $convert 短縮形で、onError がありません。無効な値の変換はエラーになります。

カテゴリ集合・条件・変換
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ $toBool: <expression> }

⚙️ パラメータ

式変換する値。

戻り値:ブール値。入力が null の場合は null

▶ 例

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

// $toBool: 0/1 フラグをブール値に変換
db.devices.aggregate([
  { $project: {
      active: { $toBool: '$enabled' }
  } }
])

出力:

{ '_id': 1, 'active': true }
{ '_id': 2, 'active': false }

📌 注意事項

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

📚 関連チュートリアル

❓ よくある質問

Q数値 0 はどうなりますか?
Afalse になります。0 以外の数値は true になります。
Q文字列は変換できますか?
A'true' と 'false' は変換できます。他の文字列はエラーになります。
Qnull は何を返しますか?
Afalse ではなく null を返します。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%