[解決済み] or' 条件を含む MongoDB クエリ
2022-03-07 14:52:07
質問
そこで、グループのメンバーシップを追跡する埋め込み文書があります。 各埋め込み文書には、別のコレクションにあるグループを指す ID、開始日、および 任意 有効期限
あるグループの現在のメンバーを照会したいのですが、quot;Current"とは、開始時間が現在の時間より短く、有効期限が現在の時間より長いか、またはnullであることを意味します。
この条件付きクエリには完全に閉口しています。 2つのクエリを実行して結果をマージすることもできますが、それは醜く、一度にすべての結果を読み込む必要があります。 また、有効期限を遠い将来の任意の日付にすることもできますが、これはさらに醜く、脆くなる可能性があります。 SQLでは、quot;(expires >= Now())と表現すればよいでしょう。OR (expires IS NULL)" -- しかし、Mongoではどうすればいいのかわかりません。
何かアイデアはありますか? ありがとうございました。
どのように解決するのですか?
このページを見つけた人のために、更新しておきます。 1.5.3 で、mongo は本当の $or 演算子をサポートするようになりました。 http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24or
あなたのクエリである "(expires >= Now()) OR (expires IS NULL)" は、次のようにレンダリングされます。
{$or: [{expires: {$gte: new Date()}}, {expires: null}]}
関連
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
[解決済み] 配列のサイズが1より大きい文書を検索します。
-
[解決済み] MongoDB Compass フィルタ (クエリ)
-
[解決済み] 配列フィールドが空でない MongoDB レコードを検索する
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] コマンドラインからMongoDBデータベースを削除する方法を教えてください。
-
[解決済み] mongodbの最後のN個のレコードを取得する方法は?
-
[解決済み] MongoDBのリレーションシップ:埋め込みか参照か?
-
[解決済み] MongoDB データベースのすべてを削除する
-
[解決済み】MongoDBでデータのバージョニングを実装する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】MongoDBデータベースの名前を変更する方法とは?
-
[解決済み] 複合リテラルのキー無しフィールドの使用
-
[解決済み] MongoDB Compass: select distinct フィールド値
-
[解決済み] ネストされた配列の中で、マッチしたサブドキュメントの要素のみを返す
-
undefinedエラー: getaddrinfo ENOTFOUND localhost または MongoDB connected disconnected
-
問題 - mongodb - ストリームの終了に早く到達する
-
[解決済み] mongooseを使ってmongodbにドキュメントを挿入し、生成されたidを取得する方法は?
-
[解決済み】ネストされたオブジェクトをクエリする方法は?
-
[解決済み] MongoDB のオブジェクトを部分的に更新して、新しいオブジェクトを既存のオブジェクトにオーバーレイ/マージするにはどうすればよいですか?
-
[解決済み】Node.js Mongoose.js の文字列を ObjectId に変換する関数