修改数据

UQL 支持对元数据(node 和 edge)的修改,可以通过对指定的 ID 对应的数据进行修改,也可以通过 ultipa 过滤器批量修改。

修改数据的 [命令]update()

修改数据的 [参数]nodes() 或者 edges()

修改数据也同样支持 静默模式 , 通过 silent() 参数即可开启。

修改点数据

对 node 的修改,支持单个修改 和 批量修改,并且支持通过 Ultipa 过滤器来定义修改范围。 语法如下:

update().nodes(<filter>).set({<property>:<value>,...})

示例 1:修改点 ( id = 12) ,属性 name 改为 ultipa

update()
  .nodes(12)
  .set({ name: "ultipa" });

示例 2:修改 ( age > 18 ) 的点,属性 type 改为 adult

update()
  .nodes({ age: { $gt: 18 } })
  .set({ type: "adult" });

示例 3:修改 ( id $in [12,23,30] ) 的点, 属性 type 改为 Company

update()
  .nodes([12, 23, 30])
  .set({ type: "Company" });

修改边数据

对边属性进行修改与对点属性修改,方法相同, 这部分可以参考上一节《修改点数据》的内容。

除了对边的属性进行修改,也支持对边的 起点 ID 和 终点 ID 进行修改,即对边的两端点 ID 进行重新指定。

具体语法如下:

update().edges(<filter>).set({<property>:<value>,...})

示例:修改起始边 ID 为 12 的边的 name 为 Like

update()
  .edges({ _from_id: 12 })
  .set({ name: "Like" });