График Dgraph пересекается
У меня есть запрос GraphQL+, в котором я хочу найти общих друзей двух человек. Но я действительно не мог найти какую-либо возможность использовать какое-то пересечение двух графиков... кто-то может мне помочь? Вот мой код:
{
catarinas_friends(func: eq(name, "Catarina"))
{
friend
{
name
}
}
michaels_friends(func: eq(name, "Michael")) {
friend
{
name
}
}
# I want to intersect those two
}
0 ответов
Это работает для вас?
{
var(func: eq(name@., "Michael")) {
MF as friend
}
var(func: eq(name@., "Amit")) {
CF as friend
}
in_common(func: uid(MF)) @filter(uid(CF)){
name@.
}
}
с этим набором данных https://tour.dgraph.io/master/intro/4/ У вас могут быть общие друзья.
Вы также можете использовать запросы K-кратчайшего пути
Средняя в ответе - самая близкая общая сущность.