Parse - 创建两个 OR 查询的 AND 查询

lam*_*ert 1 javascript parse-platform

我需要在 Parse.com(伪语言)中执行以下查询:

select all posts where 
  (expired < today OR expired not exists) 
  AND 
  (owner is {user} OR commenter contains {user})
Run Code Online (Sandbox Code Playgroud)

我知道在 Javascript 中我可以使用 来创建两个 OR 查询Parse.Query.or,但是由于似乎没有Parse.Query.and变体,我不知道如何将这两个 OR 查询组合成一个查询。

其他人建议简单地equalTo多次使用来创建 AND 语句,但这不适用于组合 OR 查询。

vol*_*ron 5

我对 Parse 不熟悉,评论太长了,但请参阅下面的文档;特别是最后一句话似乎是你所追求的。

复合查询

如果要查找与多个查询之一匹配的对象,可以使用 Parse.Query.or 方法构造一个查询,该查询是传入的查询的 OR。例如,如果您想找到具有大量赢或赢几场,你可以这样做:

var lotsOfWins = new Parse.Query("Player");
lotsOfWins.greaterThan("wins", 150);

var fewWins = new Parse.Query("Player");
fewWins.lessThan("wins", 5);

var mainQuery = Parse.Query.or(lotsOfWins, fewWins);
mainQuery.find({
  success: function(results) {
     // results contains a list of players that either have won a lot of games or won only a few games.
  },
  error: function(error) {
    // There was an error.
  }
});
Run Code Online (Sandbox Code Playgroud)

您可以向新创建的 Parse.Query 添加额外的约束,作为“和”运算符。