【发布时间】:2021-09-23 09:18:09
【问题描述】:
假设我有以下图表查询来获取用户及其帖子:
query MyQuery {
users{
id
posts {
id
}
}
}
假设我有一个没有任何帖子的用户 A。上面的查询给了我一个类似于 SQL 中的外部联接的结果,我将在其中获取用户 A,但由于没有用户,所以它有一个空的帖子数组。
如果我只想获取至少有一篇帖子的用户,我会怎么做,类似于 SQL 中的内部联接对我所做的那样?
我进行了一些挖掘,发现一些结果表明我可以在查询中使用“@cascade”来在 graphql 中执行类似的操作。不幸的是,这对我在 Hasura 不起作用。
如何在 Hasura 中实现这一目标?我可以根据帖子的聚合对父级(“用户”)进行排序,但没有过滤数组关系聚合的选项,否则我会根据帖子计数 > 0 过滤用户。
【问题讨论】:
-
所以“类似于 SQL 中的谓词 EXIST(半连接)”更正确 - 对吧?
-
你所说的和左连接有什么区别? @AlexYu