在Parse中实现关系型连接查询的技术指南
在本指南中,您将执行 Parse 中的关系查询,模拟使用 NoSQL 数据库的 SQL JOIN 查询的行为。
要完成本教程,您需要:
以 SQL JOIN 查询的方式查询存储在 Back4App 上的关系数据。
任何 Parse 查询操作都使用 Parse.Query 对象类型,这将帮助您在整个应用程序中从数据库中检索特定数据。重要的是要知道 Parse.Query 只有在调用检索方法(如 Parse.Query.find 或 Parse.Query.get)后才会解析,因此可以设置查询并在实际调用之前链接多个修饰符。
要创建一个新的 Parse.Query, 您需要将所需的 Parse.Object 子类作为参数传递,这将包含您的查询结果。下面可以看到一个示例查询,其中查询了一个虚构的 Profile 子类。
您可以在 Parse.Query 类的 官方文档中了解更多信息。
让我们创建两个示例类, TableA 和 TableB, 这将是我们在本指南中查询的目标。在 Parse JS 控制台中,可以直接运行 JavaScript 代码,使用 JS SDK 命令查询和更新您的应用程序数据库内容。从您的 JS 控制台运行下面的代码并在 Back4App 中插入数据。
以下是您的仪表板中 JS 控制台的样子:

继续创建以下内容的类:
现在您已经填充了类,我们可以在其中执行关系查询。让我们开始执行 INNER JOIN, 引入我们将在所有示例中使用的连接关系查询。此查询表示表 A 和表 B 之间两个组合查询的结果,返回所有通过特定条件相关的记录,使用 Parse.Query.matchesQuery 方法.
该 INNER JOIN SQL 查询行为与我们通用的连接关系查询完全相同,因此我们需要在控制台中打印其结果。请记住,使用 Parse.Object,您可以使用 get 方法通过列名检索数据.
现在让我们执行一个 LEFT OUTER JOIN,获取所有在 TableA 中的记录,并在可用时显示 TableB 中的关系数据:
右外连接RIGHT OUTER JOIN是左外连接的相反,获取来自TableB的记录。
最后,我们有了完全外连接,这是左内连接和右内连接的组合:
在本指南的最后,您学习了如何使用 Parse 在 Back4App 上执行关系查询,并在 NoSQL 数据库中模拟最常见的 SQL JOIN 查询。