使用Parse Android SDK实现OR条件?

时间:2014-07-04 06:26:57

标签: android parse-platform parse-android-sdk

我是Parse的新手,我正在开发一个使用Android PARSE Sdk的项目,所以我想知道如何使用android sdk进行where查询或条件。

我想像这样[Psuedo code]

进行查询
Select * from employ where employId is ("1","2","3")

我在解析文档中找到this,我不知道它是否有帮助。

修改

这是我在PARSE上发现的,但它不起作用

String[] id= {"1","2","3"};
query.whereContainedIn("employId ", Arrays.asList(id));

它给我一个空列表但是如果我逐个查询它我得到结果......谁能告诉我什么错了?

2 个答案:

答案 0 :(得分:3)

您可以使用whereContainedIn选择特定行。看到这篇文章你可以得到更多的想法。 https://www.parse.com/questions/different-arrays-and-wherecontainedin-for-android

List<String> employId = new ArrayList<String>();
employId.add("1"); employId.add("2"); employId.add("2");
query.whereContainedIn("employId", employId);

如果你还不清楚。检查此https://www.parse.com/docs/android_guide#queries

答案 1 :(得分:1)

我找到了解决方案,我必须说它PARSE相当蹩脚,不要在文档中的任何地方提及。

问题是我在whereContainedIn方法中使用的值是String 类型,但实际上它们指向另一个表的行。 我试图仅使用 ids [因为它显示在解析] 来获取值,而是我必须传递整个对象才能检索它们。这就是为什么它返回空列表的原因。

事情是即使它显示ID [指向表中对象的指针],我们也只能使用ID来搜索,而是如果我们想要基于特定对象搜索表,我们必须使用完整的Parse对象。