Graphql Hasura:如何过滤阵列内部
我有一个具有以下模式的Postgres数据库: 文章id类型:文本 建议类型:文本[] 示例行如下所示: XX1、[XX2、XX3、XX5] 现在在Hasura,我可以过滤文章的推荐信息,例如:Graphql Hasura:如何过滤阵列内部,graphql,hasura,Graphql,Hasura,我有一个具有以下模式的Postgres数据库: 文章id类型:文本 建议类型:文本[] 示例行如下所示: XX1、[XX2、XX3、XX5] 现在在Hasura,我可以过滤文章的推荐信息,例如: query get_recommendations { recommendations(limit: 10, where: {article_id: {_eq: "xxxx1"}}) { recommendations } } 这会给我[xxxx2,xxxx3,xx
query get_recommendations {
recommendations(limit: 10, where: {article_id: {_eq: "xxxx1"}}) {
recommendations
}
}
这会给我[xxxx2,xxxx3,xxxx5]
但我如何从建议数组中筛选特定的建议
基本上,我想得到关于第xx1条的建议,但不是建议xxxx3
结果应该是[xxxx2,xxxx5]
我在Hasura尝试了所有的过滤器组合,但这似乎不可能?你能帮我吗?你应该可以用hasura来做这个 创建一个类似这样的函数,该函数将建议表中的一行作为输入 创建函数public.filtered_recommendationsrec_行建议,建议到过滤器文本[] 返回json 语言sql稳定 作为$function$ 选择select json_aggunnest作为UNNESTrec_行中筛选的_建议。建议,其中unnest ALL建议从建议中筛选 $function$ 然后将此函数添加为计算字段。此计算字段将显示为建议中的字段 让这有点复杂的是使用数组来存储文章的推荐。若表的模式改为article_id文本、Recommension text,那个么您可以像使用article_id一样使用建议过滤器