修改密码

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

修改昵称

当前昵称:
提交

申请证书

证书详情

Please complete this required field.

  • Ultipa Blaze (v4)

Standalone

Please complete this required field.

Please complete this required field.

Please complete this required field.

Please complete this required field.

如果不需要 HDC 服务,则此项留空。

Please complete this required field.

如果不需要 HDC 服务,则此项留空。

Please complete this required field.

Please complete this required field.

所有服务器的MAC地址,由换行符或逗号分隔。

Please complete this required field.

Please complete this required field.

取消
申请
ID
产品
状态
核数
Shard 服务最大数量
Shard 服务最大总核数
HDC 服务最大数量
HDC 服务最大总核数
申请天数
审批日期
过期日期
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

v4.5
搜索
    v4.5

      WHERE

      概述

      WHERE子句将别名中满足条件的数据行保留,不满足条件的数据行舍弃。

      语法

      WHERE <condition>
      
      // 开发中
      WHERE <query>
      
      • <condition>为判断条件表达式,保留判断为真的数据行
      • <query>为查询语句,保留有查询结果的数据行

      WHERE子句后必须有其他子句对流入WHERE子句的别名,或该别名的同源别名进行操作,否则该语句无效。

      例如,将两个异源别名n1和n2进行比较,如果点颜色相同则保留:

      find().nodes({shape == "square"}) as n1
      find().nodes({shape == "round"}) as n2
      where n1.color == n2.color
      return n1, n2
      

      示例

      用条件表达式进行判断

      示例图集:

      在一个空图集中,依次运行以下各行语句创建示例图集:

      create().node_schema("student").node_schema("course")
      create().node_property(@*, "name").node_property(@student, "age", int32).node_property(@course, "credit", int32)
      insert().into(@student).nodes([{_id:"S001", _uuid:1, name:"Jason", age:25}, {_id:"S002", _uuid:2, name:"Lina", age:23}, {_id:"S003", _uuid:3, name:"Eric", age:24}, {_id:"S004", _uuid:4, name:"Emma", age:26}, {_id:"S005", _uuid:5, name:"Pepe", age:24}])
      insert().into(@course).nodes([{_id:"C001", _uuid:6, name:"French", credit:4}, {_id:"C002", _uuid:7, name:"Math", credit:5}])
      insert().into(@default).edges([{_uuid:1, _from_uuid:1, _to_uuid:6}, {_uuid:2, _from_uuid:2, _to_uuid:6}, {_uuid:3, _from_uuid:3, _to_uuid:6}, {_uuid:4, _from_uuid:2, _to_uuid:7}, {_uuid:5, _from_uuid:3, _to_uuid:7}, {_uuid:6, _from_uuid:4, _to_uuid:7}, {_uuid:7, _from_uuid:5, _to_uuid:7}])
      

      本例查询“课程-[]-学生”1步路径,路径中课程的credit属性为4或学生的age属性为24时,返回路径中点和边的全部信息:

      n({@course} as a).e().n({@student} as b) as p
      where a.credit == 4 || b.age == 24
      return p{*}
      

      French <---- Jason
      French <---- Lina
      French <---- Eric
      Math <---- Pepe
      Math <---- Eric
      

      用查询语句进行判断(开发中)

      本例查找满足下图所示条件的中介银行卡agent,即银行卡CA002经由agent向银行卡CA001转账,同时agent是CA003的2步内邻居:

      n({_id == "CA002"}).re().n({@card} as agent).re().n({_id == "CA001"})
      where n(agent).e()[*:2].n({_id == "CA003"})
      return agent{*}
      

      WHERE子句对路径查询子句输出的别名agent做进一步的过滤:对于每一个agent,判断其到CA003的2步内最短路径是否存在,如果存在,则将该agent传给后面的RETURN子句。

      上例也可以用子图模板子句实现:

      subgraph([
        n({_id == "CA002"}).re().n({@card} as agent).re().n({_id == "CA001"}),
        n(agent).e()[*:2].n({_id == "CA003"})
      ])
      return agent{*}
      
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写