有多个tag,需要删除其中一个tag的全部数据而不影响其他tag的数据。

版本: 3.5.0
需求点是:有多个tag,需要删除其中一个tag的全部数据而不影响其他tag的数据。
查看论坛中得出的nGQL
lookup on player yield id(vertex) as vid | delete vertex $-.vid
是不对的。

例如:
创建边与索引
CREATE TAG IF NOT EXISTS player(name string);
CREATE EDGE INDEX player_index on player();
CREATE TAG IF NOT EXISTS player1(name string);
CREATE EDGE INDEX player1_index on player1();
插入数据
INSERT VERTEX player() VALUES “10”:();
INSERT VERTEX player1() VALUES “10”:();
需求是只删除play中的数据?
而lookup on player yield id(vertex) as vid | delete vertex $-.vid 会将player与player2有关联的vid的数据都删除。
尝试使用 lookup on archive_vertex_core yield id(vertex) as vid | DELETE TAG archive_vertex_core FROM $-.vid 报错

这个问题应该是老问题了。我看很多人在很久也提出来过。不知道有没有解决?

这是是删除有某个 tag 的的 nGQL 而不是删除某个 tag,如果你要删除某个 tag 的话,直接用 drop tag 就好了 https://docs.nebula-graph.com.cn/3.6.0/3.ngql-guide/10.tag-statements/2.drop-tag/

drop是把tag结构也删掉了,其实我想是实现的是相当truncate的功能

目前不支持,需要重建

这个后续会考虑支持吗?因为我觉得这个功能挺常见的,也比较常用。清空某个点与边的数据,而不影响其他点与边。主要是arangodb,neo4j都支持这个功能。

收到。这个需求会考虑支持

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。