$gte (以上)
最終更新:2026-10-09
$gte (以上)
$gte は式形式の「以上」比較です。2 つの引数を取り、最初が 2 番目以上のとき true を返します。閾値チェックや範囲フィルタリングに使われ、例えば売上が保証最低額に達した商品を維持します。式の構文は { $gte: [expr1, expr2] } で、クエリ演算子の { field: { $gte: value } } とは異なります。比較は BSON の型順序に従い、$gt と違い値が等しいときも true を返します。
| カテゴリ | 集合・条件・変換 |
|---|---|
| MongoDB バージョン | 1.0+ |
| 例の言語 | mongosh(シェル) |
📝 構文
{ $gte: [ <expression1>, <expression2> ] }
⚙️ パラメータ
| 式1 | 比較する最初の式。 |
|---|---|
| 式2 | 比較する2番目の式。 |
戻り値:1つ目が2つ目以上の場合は true、それ以外は false
▶ 例
以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):
// $gte: 売上が目標に達しているか確認
db.products.aggregate([
{ $project: {
qualified: { $gte: ['$sales', '$target'] }
} }
])
出力:
{ '_id': 1, 'qualified': true }
{ '_id': 2, 'qualified': false }
📌 注意事項
- 等しい場合も true になる — $gt との最大の違い
- 式形式とクエリ形式は書き方が違う
- 比較は BSON の型順序に従う
🏷️ 関連タグ
💡 関連ケース
さらなる実践ケースを近日公開予定。
📚 関連チュートリアル
❓ よくある質問
Q$gte と $gt の違いは?
A$gte は等しい場合を含みます。$gt は厳密に大きい場合だけです。
Q日付を比較できますか?
Aはい — 日付は時系列順で比較されます。
Q両方の引数は数値である必要がありますか?
Aいいえ — どの型も BSON の型順序で比較されます。