查询以获取具有唯一对象的行解析ios

sol*_*hin 1 ios parse-platform

我有一个名为table 1的表,其中包含一个名为parent field的字段,其中包含表2的object(Objectid).现在我不想获取重复的objectId并按升序排列它们.这是表的数据.

 Table1
 parentfield(id)
 790112
 790000
 790001
 790112
 790000
 790001
Run Code Online (Sandbox Code Playgroud)

现在结果将是前三个元素,但我不知道id匹配的数量.有没有办法做到这一点?

Luc*_*aco 5

不幸的是,Parse中没有SELECT DISTINCT/GROUP BY操作.

请参阅此主题:https://parse.com/questions/retrieving-unique-values

建议的团队解决方案:

没有内置查询约束可以根据列返回不同的值.

作为一种变通方法,您可以查询所有行,然后遍历它们并跟踪所需列的不同值

因此,令人遗憾,糟糕,可怕的想法是创建一个获取所有可能元素的云函数(请记住,Parse允许您为每个查询获取最多1000个元素),然后从结果列表中删除重复项.您可以在云代码功能上执行此操作,然后将已清理的列表返回给客户端,也可以直接在客户端设备上执行此操作.所有这些意味着如果你想在这种情况下检索真正的选择不同的等价物,你应该首先获取所有元素(一个查询循环,一次检索1000个项目),然后应用你的自定义算法来删除重复项.我知道,考虑到Parse云功能执行的超时限制为7-10秒,这真的很长而且令人沮丧.也许转到Parse背景作业,您可以填充一个不同的临时表,因为您应该在超时之前执行最多15分钟.

另一个重要的解决方案是将数据移动到支持ER数据库的另一台服务器上(比如在Openshift上,保留一个免费的层),并且通过一些Parse后台作业,您可以将元素从解析同步到ER数据库,因此您可以重定向客户端请求ER db而不是Parse.

希望能帮助到你