gpt4 book ai didi

swift - 如何使用 swift 在 Realm 中执行连接查询?

转载 作者:搜寻专家 更新时间:2023-11-01 07:19:58 26 4
gpt4 key购买 nike

我要执行连接查询

table1)
class student
{
name:String
classcode:Int
}

table2)
class classcode
{
classcode:Int
name:String
}

数据示例

student:

| name | classcode |
| john | 001 |
| Kim | 002 |

classcode:

| classcode | name |
| 001 | computer |
| 002 | Math |

我想得到输出-? 约翰,电脑

如何在 Realm 中执行查询?

最佳答案

Realm 是一个基于对象的数据库,因此查询中的连接概念不适用于它。

在这种特殊情况下,将 classcode 对象设置为 student 类中的列表是合适的。像这样:

class Class: Object {
dynamic var classCode = 0
dynamic var name = ""
}

class Student: Object {
dynamic var name = ""
let classes = List<Class>()
}

---

let realm = try! Realm()

let computerClass = Class()
computerClass.classCode = 1
computerClass.name = "Computer"

let newStudent = Student()
newStudent.name = "John"
newStudent.classes.append(computerClass)

try! realm.write {
realm.add(computerClass)
realm.add(newStudent)
}

Realm List 对象不存储 Object 实例的副本;它们只在其表中存储对相应 Object 的引用。通过这种方式,它复制了您在连接查询中期望的相同类型的设置。

如果您需要进一步说明,请告诉我! :)

关于swift - 如何使用 swift 在 Realm 中执行连接查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39678008/

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