跳转至

DELETE TAGGraph

DELETE TAG语句可以删除指定点上的指定 Tag。

点可以有一个或多个 Tag。

  • 如果某个点只有一个 Tag,删除这个点上的 Tag 后,用户就无法访问这个点,下次 Compaction 操作时会删除该点,但点上的边仍然存在。
  • 如果某个点有多个 Tag,删除其中一个 Tag,仍然可以访问这个点,但是无法访问这个点上已删除 Tag 所定义的所有属性。

前提条件Graph

登录的用户必须拥有对应权限才能执行DELETE TAG语句。详情请参见Graph。

语法Graph

DELETE TAG <tag_name_list> FROM <VID>;
  • tag_name_list:指定 Tag 名称。多个 Tag 用英文逗号(,)分隔,也可以用*表示所有 Tag。
  • VID:指定要删除 Tag 的点 ID。

示例Graph

nebula> CREATE TAG IF NOT EXISTS test1(p1 string, p2 int);
nebula> CREATE TAG IF NOT EXISTS test2(p3 string, p4 int);
nebula> INSERT VERTEX test1(p1, p2),test2(p3, p4) VALUES "test":("123", 1, "456", 2);
nebula> FETCH PROP ON * "test";
+------------------------------------------------------------+
| vertices_                                                  |
+------------------------------------------------------------+
| ("test" :test2{p3: "456", p4: 2} :test1{p1: "123", p2: 1}) |
+------------------------------------------------------------+

nebula> DELETE TAG test1 FROM "test";
nebula> FETCH PROP ON * "test";
+-----------------------------------+
| vertices_                         |
+-----------------------------------+
| ("test" :test2{p3: "456", p4: 2}) |
+-----------------------------------+

nebula> DELETE TAG * FROM "test";
nebula> FETCH PROP ON * "test";
+-----------+
| vertices_ |
+-----------+

Compatibility

  • 在 openCypher 中,可以使用 REMOVE v:LABEL 语句来移除该点 vLABEL
  • 相同语意,但不同语法。在 nGQL 中使用 DELETE TAG

最后更新: November 24, 2021
Back to top