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> 结果为false ,SET 子句不会生效。 |
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