Hey @luke ![]()
Although I’m not exactly sure what you are wanting to do, my guess is that you want to use @cascade.
So, a DQL query for your problem could look like this:
{
qUrlNode(func: type(UrlNode)) @filter(eq(UrlNode.visit_time, "2023-06-01")) @cascade(UrlNode.visit_user_name) {
url
UrlNode.url_name
UrlNode.belong {
uid
AppNode.app_name
AppNode.app_host
}
UrlNode.visit_user_name @filter(eq(UserNode.user_name, "t.t")) {
uid
UserNode.user_name
}
}
}
So you query via UrlNode to filter for visit_time. Then @cascade filters out all results where UrlNode.visit_user_name with filter user_name returns null. This result also applies to AppNode results.
Hope this helps! ![]()
P.S.: If the set mutation is the real mutation you have been using, then you are missing dgraph.type on all of the nodes.