https://dgraph.io/tour/schema/8/
显示一些删除选项
- 删除单个三元组
- 删除给定边的所有三元组
- 删除给定节点的所有三元组
现在我想删除给定类型节点的所有三元组。我假设这是通过某种查询组合来完成的,该查询选择给定类型的节点,然后对每个节点进行突变。我在教程中找不到这方面的示例。
假设我想删除 Country 类型节点的所有三元组。
我知道如何为节点选择 uid:
{
query(func: has(<dgraph.type>)) @filter(eq(<dgraph.type>, "Country")) {
uid
}
}
但是我如何将其与突变结合起来?
https://discuss.dgraph.io/t/how-to-bulk-delete-nodes-or-cascade-delete-nodes/7308
似乎要求“更新插入”
如何实现删除给定类型节点的所有三元组?
最佳答案
以下更新插入似乎有效:
upsert {
query {
# get the uids of all Country nodes
countries as var (func: has(<dgraph.type>)) @filter(eq(<dgraph.type>, "Country")) {
uid
}
}
mutation {
delete {
uid(countries) * * .
}
}
}
关于dgraph - 如何删除给定类型的所有节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63358495/