gpt4 book ai didi

ios - 使用解析连接两个表

转载 作者:可可西里 更新时间:2023-11-01 04:39:46 28 4
gpt4 key购买 nike

我在 parse.com 有一个数据库

我有一个类叫做 UserDetail

在那个类中我有一个名为 occupationid 的数组字段

对于这个专栏,我有另一个名为 Occupation 的类,其中的列就像职业编号, 职业名称

现在我想根据 中存储的 occupationidUserDetail 中获取所有数据以及从 occupation 类中获取所有数据用户详细信息


用户详细信息

用户名-职业id-详情

Jhon - ["1","3","4"] - ajfdkaldjlajsdkfjaldkf


职业

occupationid - 职业

1 - 会计师

2 - 律师

3 - 画家

4 - 作家

像聪明人一样。

我已经阅读了文档和关于 PFRelation 的内容,但不知道如何在我的案例中应用它来获取此类数据。

我也试过

    PFQuery *getuserdetail = [PFQuery queryWithClassName:@"UserDetail"];

[getuserdetail orderByAscending:@"celebid"];

PFQuery *getoccupation = [PFQuery queryWithClassName:@"Occupation"];
[getoccupation whereKey:@"occupationid" matchesKey:@"occupationid" inQuery:getuserdetail];

有什么建议吗?我必须对其他 2,3 列执行相同的操作。任何帮助将不胜感激。

更新

数据是直接在 parse.com DataBrowser 中添加的,而不是从代码中添加的。

我在 UserDetail 类中创建了一个类型为 Relation 的列其中要求我添加 occupationidoccupation

当我补充说我面临两个问题时

1> 当我尝试为不同的用户添加相同的 occupationid 时,它为相同的 occupationid 创建了两行。这意味着对于具有相同职业的两个用户,它会在 occupationtable 中创建两行例如。objectid - occupationid - 职业adfk12 - 1 - 学校老师jdlkfg56 - 1 - 学校老师

2> 当我尝试从代码中获取时出现错误

PFQuery *getuserdetail = [PFQuery queryWithClassName:@"UserDetail"];        
[getuserdetail orderByAscending:@"celebid"];
[getuserdetail includeKey:@"occupation"];
[getuserdetail whereKey:@"userid" equalTo:[NSString stringWithFormat:@"%d",intuserID]];

occupationid = "(<00000000>.(null) -> 职业)";

其中 Occupation 是类名occupation 是列名。如果出现歧义,我尝试使用 occupationname 编辑列名 occupation 。但这也不起作用。

最佳答案

我认为您有点不知所措,因为您正在根据“正常”的类似 SQL 的数据库来考虑 Parse。我这样说是因为从您所写的内容来看,您的 occupationid 字段似乎是多余的(因为 Parse 会自动为所有对象分配一个唯一的 ID)。您可以使用 PFRelation 将职业与用户相关联,如下所示:

[someUser setObject:someOccupation forKey:@"occupation"]

这将在 someUser 上设置一个指针,在键 occupation 下。

但是,正如您可能已经发现的(也许您不确定如何正确应用 PFRelation 的原因)是 默认情况下 Parse 不获取相关查询时的对象。您需要明确告诉 Parse 这样做。

为此,您可以使用 includeKey: 方法。因此,要同时查询用户 获取他们的职业(假设您已将职业设置为 PFRelation),您可以这样做:

PFQuery *query = [PFQuery queryWithClassName:@"UserDetail"];
[query includeKey:@"occupation"];
[query findObjectsInBackground... etc

我最好的建议是尽量不要将 Parse 视为 MySQL 或类似的东西,因为它的工作方式完全不同。我发现 Parse 的文档非常有用且清晰,因此也许也值得一看。

关于ios - 使用解析连接两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17228542/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com