如何按照TAG存不存在来删除对应的VERTEX?

  • nebula 版本:3.6.0
  • 部署方式:分布式
  • 安装方式:RPM
  • 是否上生产环境:N

===
背景:库中有COMPANY、COMPANY1、COMPANY2三类TAG,如何删除那些有COMPANY,而没有COMPANY1标签的节点呢?
eg:
节点1上有标签:COMPANY
节点2上有标签:COMPANY、COMPANY1、COMPANY2
节点3上有标签:COMPANY、COMPANY2
现在按要求是要删除节点1和节点3,这个语句该怎么写?

尝试语句1:
LOOKUP ON COMPANY where ‘COMPANY1’ not in tags(vertex) yield id(vertex) as vv | delete $-.vv
报错:SemanticError: Expression (“INCOMPANY” NOT IN tags(VERTEX)) not supported yet

尝试语句2:
match (n:COMPANY) where ‘COMPANY1’ not in tags(n) with id(n) as rr delete vertex rr
报错:SyntaxError: syntax error near `delete’

match 要和其他的操作符一起的话,大概得借助 with

$vid = (lookup on player yield id(vertex) as id) minus (lookup on team yield id(vertex) as id); delete vertex $vid.id

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