我有一个类,它有一个对象类型列,例如
COLUMN 1
Row 1 : {"gender":"male","name":"A"}
Row 2 : {"gender":"female","name":"B"}
Row 3 : {"gender":"male","name":"C"}
我需要获取COLUMN1中关键字name
的对象与数组["A","B"]
的内容匹配的行
所以在可能的情况下,查询应该返回ROW1和ROW2。
我知道这个方法,但据我所知,它用于将数组与Parse中的string
列进行比较:[query whereKey:@"name" containsAllObjectsInArray:selectedParticipants];
如何将我的数组与字典列进行比较?
parse.com集合中对象类型的缺点之一是只能查询到完全匹配的对象。在当前模型下,唯一能做到这一点的方法是用其他列限定查询,以获取可能与对象条件匹配的最小集合,然后在客户端进行对象匹配。
如果集合有很多文档,并且希望快速运行,那么更好的选择是调整数据模型,使嵌入对象中的可查询属性成为它们自己的列。。。
name (string) gender (string) otherStuff (object)
row0 "A" "male" { /* stuff we don't query on */ }
row1 "B" "female" { ... }
...
这样,您就可以使用[query whereKey:@"name" containedIn:@[@"A", @"B"]]
来限定查询。请注意,它不包含AllObjectsInArray,它是如何测试数组属性的。