跳转至

UPDATE VERTEX

UPDATE VERTEX语句可以修改点上 Tag 的属性值。

NebulaGraph 支持 CAS(compare and set)操作。

Note

一次只能修改一个 Tag。

语法

UPDATE VERTEX ON <tag_name> <vid>
SET <update_prop>
[WHEN <condition>]
[YIELD <output>]
参数 是否必须 说明 示例
ON <tag_name> 指定点的 Tag。要修改的属性必须在这个 Tag 内。 ON player
<vid> 指定要修改的点 ID。 "player100"
SET <update_prop> 指定如何修改属性值。 SET age = age +1
WHEN <condition> 指定过滤条件。如果<condition>结果为falseSET子句不会生效。 WHEN name == "Tim"
YIELD <output> 指定语句的输出格式。 YIELD name AS Name

示例

// 查看点”player101“的属性。
nebula> FETCH PROP ON player "player101" YIELD properties(vertex);
+--------------------------------+
| properties(VERTEX)             |
+--------------------------------+
| {age: 36, name: "Tony Parker"} |
+--------------------------------+

// 修改属性 age 的值,并返回 name 和新的 age。
nebula> UPDATE VERTEX ON player "player101" \
        SET age = age + 2 \
        WHEN name == "Tony Parker" \
        YIELD name AS Name, age AS Age;
+---------------+-----+
| Name          | Age |
+---------------+-----+
| "Tony Parker" | 38  |
+---------------+-----+

最后更新: September 4, 2023