$lt (より小さい)

最終更新:2026-10-09

$lt (より小さい)

$lt は、フィールドの値が指定値より厳密に小さいドキュメントを選択します。`{ price: { $lt: 20 } }` は 20 未満の価格の商品に一致します。価格の上限、締切日、スコアの上限などに使います。$gt と組み合わせて開区間を作れます。文字列は辞書順、日付は時系列順に比較され、型に敏感です。

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

📝 構文

{ <field>: { $lt: <value> } }

⚙️ パラメータ

フィールドマッチ対象のドキュメントフィールド。
値上限値。境界自体は除外されます。

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

▶ 例

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

// $lt: 20 未満の商品
db.products.find({ price: { $lt: 20 } })

// 締切日より前に登録したユーザー
db.users.find({ registeredAt: { $lt: new Date('2026-01-01') } })

出力:

// 20 未満の商品と、2026 年 1 月 1 日より前に登録したユーザーを返す

📌 注意事項

📚 関連チュートリアル

❓ よくある質問

Q$lt と $lte の違いは?
A$lt は厳密に小さい(境界値を含まない)、$lte は以下(境界値を含む)です。20 未満なら $lt: 20、20 以下なら $lte: 20 を使います。
Qスコアが 60 から 90 の間のクエリはどう書きますか?
A1 つのフィールドに組み合わせます: { score: { $gt: 60, $lt: 90 } }。開区間です。
Q$lt を日付に使うときの注意点は?
A日付は new Date('YYYY-MM-DD') でラップします。生の文字列だと辞書順で比較され、想定外の結果になります。
Web-Tutorial.com

Web-Tutorial 技術チーム

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

100%