我试图使用ParseQueryAdapter给我一个游戏列表。我有一个单独的表来存储游戏和玩家指针。在查询中,我试图列出游戏,以及有多少玩家。 SQL风格是这样的:SELECT游戏,计数(玩家)来自游戏JOIN参与者......
我理解如何使用两个不同的ParseQueries来做到这一点,但它只需要一个ParseQuery。
public class GamesListAdapter extends ParseQueryAdapter<ParseObject> {
public GamesListAdapter(Context context) {
super(context, new ParseQueryAdapter.QueryFactory<ParseObject>() {
public ParseQuery create() {
ParseQuery query = new ParseQuery("Games");
return query;
}
});
}
如何通过计算来自不同表格的所有玩家来返回复合查询?
答案 0 :(得分:0)
您似乎已经自己找到了答案,但我在此处发布了解决方案,以便其他人可能会觉得有用。
在我的情况下,我有一个User
ParseObject和一个UserPhoto
ParseObject。我想只获取用户的个人资料图片并将其设置为ListView
,但从结果中排除currentUser(我的)个人资料图片。这是我的工作代码。
public class CustomAdapter extends ParseQueryAdapter<ParseObject> {
public CustomAdapter(Context context) {
super(context, new ParseQueryAdapter.QueryFactory<ParseObject>() {
public ParseQuery create() {
ParseObject myUser = null;
ParseQuery<ParseObject> myUserQuery = ParseQuery.getQuery("User");
myDogQuery.whereEqualTo("user", ParseUser.getCurrentUser());
try {
myUser = myUserQuery.getFirst();
} catch (ParseException e) {
e.printStackTrace();
}
ParseQuery<ParseObject> userPhotoQuery = ParseQuery.getQuery("UserPhoto");
dogPhotoQuery.whereEqualTo("imageName", "profileImage");
dogPhotoQuery.whereNotEqualTo("user", myUser);
dogPhotoQuery.orderByDescending("createdAt");
return userPhotoQuery;
}
});
}
我还想看看你的代码,如果你有一些时间,因为我想看看“whereKeyDoesMatch函数”的实现。谢谢!!