修改密码

请输入密码
请输入密码 请输入8-64长度密码 和 email 地址不相同 至少包括数字、大写字母、小写字母、半角符号中的 3 个
请输入密码
提交

修改昵称

当前昵称:
提交

申请证书

证书详情

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

服务器的MAC地址

Please complete this required field.

Please complete this required field.

取消
申请
ID
产品
状态
核数
申请天数
审批时间
过期时间
MAC地址
申请理由
审核信息
关闭
基础信息
  • 用户昵称:
  • 手机号:
  • 公司名称:
  • 公司邮箱:
  • 地区:
  • 语言:
修改密码
申请证书

当前未申请证书.

申请证书
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

ProductName CreateTime ID Price File
ProductName CreateTime ID Price File

No Invoice

v5.0
搜索
    v5.0

      更新

      概述

      使用语句update()可以更新符合过滤条件的点和边的自定义属性值。

      点和边的系统属性(_id_uuid)以及边的起终点不可变更,无法修改。

      // 更新点
      update().nodes(<filter?>)
        .set({<property1>: <value1>, <property2?>: <value2?> ...})
      
      // 更新边
      update().edges(<filter?>)
        .set({<property1>: <value1>, <property2?>: <value2?> ...})
      
      方法
      参数
      描述
      nodes()edges() <filter?> 将过滤条件包裹在{}中,或使用别名指定待更新的点或边。留空时会作用在所有点或边上
      set() 属性规范 将包裹在{}中的属性规范指定为更新内容

      示例图集

      在一个空图集中,逐行运行以下UQL语句,创建示例图集:

      create().node_schema("user").edge_schema("follow")
      create().node_property(@user, "name").node_property(@user, "age", int32).edge_property(@follow, "time", datetime)
      insert().into(@user).nodes([{_id:"U001", name:"Jason", age:30}, {_id:"U002", name:"Tim"}, {_id:"U003", name:"Grace", age:25}, {_id:"U004", name:"Ted", age:26}])
      insert().into(@follow).edges([{_from:"U004", _to:"U001", time:"2021-9-10"}, {_from:"U003", _to:"U001", time:"2020-3-12"}, {_from:"U004", _to:"U002", time:"2023-7-30"}])
      

      更新点

      更新点属性name为Tim的对应属性值:

      update().nodes({name == "Tim"}).set({name: "Tom"})
      

      更新边

      更新当前time属性值晚于2021-5-21的边,将其time属性值设置为一天后,并返回更新后的边:

      update().edges({time > "2021-5-1"}).set({time: dateAdd(time, 1, "day")}) as edges
      return edges{*}
      

      结果:edges

      _uuid
      _from
      _to
      _from_uuid
      _to_uuid
      schema
      values
      Sys-gen U004 U001 UUID of U004 UUID of U001 follow {time: "2021-09-11 00:00:00"}
      Sys-gen U004 U002 UUID of U004 UUID of U002 follow {time: "2023-07-31 00:00:00"}

      更新所有

      更新所有点的age属性,将其设置为下一个更大的整数:

      update().nodes().set({age: age + 1}) as n
      return table(n.name, n.age)
      

      结果:

      name age
      Jason 31
      Tim null
      Grace 26
      Ted 27

      限制更新数量

      要限制更新的点/边数量,首先需使用find()语句从数据库中获取数据,接着应用LIMIT N语句,仅保留前N条记录至变量中,随后传递给update()语句。

      仅更新两个@user点的name属性,将其设置为小写:

      find().nodes({@user}) as n1 limit 2
      update().nodes(n1).set({name: lower(name)}) as n2
      return n2{*}
      

      结果:n2

      _id
      _uuid
      schema
      values
      U004 Sys-gen user {name: "ted", age: 26}
      U002 Sys-gen user {name: "tim", age: null}

      删除属性值

      删除点_id为U001的name属性值和age属性值:

      update().nodes({_id == "U001"}).set({name: null, age: null})
      
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写