簡體   English   中英

如何構造我的貓鼬查詢,以便始終考慮兩個語句中的至少一個?

[英]how can I construct my mongoose query so that at least one of two statements is always taken under consideration?

在我的應用程序中,用戶可以添加可見的條目

這是我的貓鼬查詢:

貓鼬:test.find({updated_at:{'$ gte':new Date(“ Fri,14 Oct 2011 00:00:00 GMT”),'$ lte':new Date(“ Fri,14 October 2016 20:12 :14 GMT“)},用戶名:{'$ in':['XXXXXXXXX','YYYYYYYYYYYYYYYY']},'$ or':[{myFlag:false}]}){字段:undefined}

這就是我構造它的方式:

    if (friends != undefined) {
            var friendsSplitted = friends.split(",");
            query = query.where("username").in(friendsSplitted);
       }


    if (publicEntries != undefined && publicEntries === "true") {
        query = query.or({myFlag: false});
    }

該查詢基本上說:

查找屬於您朋友的所有內容,或者查找myFlag設置為false的任何內容。

我要更改它,這樣說:

查找屬於您朋友的所有內容,還查找myFlag設置為false的任何內容(但不一定屬於您的朋友)。

你能幫我嗎?

您應該在$ or內嘗試兩個查詢,如下所示:

test.find({'$or': [ { myFlag: false },
 {updated_at: { '$gte': new Date("Fri, 14 Oct 2011 00:00:00 GMT"), 
'$lte': new Date("Fri, 14 Oct 2016 20:12:14 GMT") }, 
username: { '$in': [ 'XXXXXXXXX', 'YYYYYYYYYYYYYY' ] } ] })

希望這可以幫助!

如果我錯過了什么,請評論我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM