修改密码

请输入密码
请输入密码 请输入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

      运算符

      所有运算符

      分类
      运算符
      Schema引用 @
      属性引用 .
      逻辑运算符 &&,`
      算术运算符 +-*/%
      比较运算符 =!=><>=<=<><=>=~innin
      字符串运算符 字符串连接: +
      包含: contains
      包含(全文索引): contains
      列表运算符 构建列表: []
      访问元素: []
      判断包含关系: innin
      去重 DISTINCT
      Null谓词 is nullis not null
      优先级控制 ()

      Schema引用

      @可用来引用点或边的schema。

      find().nodes() as n
      return n.@ limit 10
      
      find().edges({@links}) as e
      return e
      

      属性引用

      .可用来引用点或边的属性。

      find().nodes() as n
      return n._id limit 10
      
      n({@account.level > 3}).e().n() as p
      return p
      

      逻辑运算符

      将两个或多个条件结合在一起,当所有条件判断为真,整个表达式判断为真。

      &(与)运算符的真值表:

      &&

      本条查询返回age大于30,且incomeGroup为4的用户:

      find().nodes({@User}) as n
      where n.age > 30 && n.incomeGroup == 4
      return n
      

      将两个或多个条件结合在一起,只需满足其中一个条件,整个表达式判断为真。

      ||(或)运算符的真值表:

      ||

      本条查询返回age大于30,或incomeGroup为4的用户:

      find().nodes({@User}) as n
      where n.age > 30 || n.incomeGroup == 4
      return n
      

      异或

      将两个或多个条件结合在一起,每次对两个条件执行逻辑运算。若表达式只有两个条件,则有且仅有一个条件为真时,整个表达式判断为真。若两个条件均为真或均为假,则最终结果为假。若表达式涉及多个条件,xor先判断前两个条件,并将判断结果与下一个条件进行比较,以此类推,直至对全部条件判断完毕。

      xor运算符的真值表:

      xor

      本条查询返回age大于30,或incomeGroup为4的用户,但会剔除同时满足两个条件的用户:

      find().nodes({@User}) as n
      where n.age > 30 xor n.incomeGroup == 4
      return n
      

      对条件进行否定,当条件为假时返回结果为真,反之亦然。

      !(非)运算符的真值表:

      !

      本条查询返回age不等于30的用户:

      find().nodes({@User}) as n
      where !(n.age == 30)
      return n
      

      算术运算符

      对数值进行算术运算。UQL支持以下算术运算符:

      • 加:+
      • 减:-
      • 乘:*
      • 除:/
      • 取余:%
      return (2+8)%3
      

      结果:

      (2+8)%3
      1

      比较运算符

      比较两个值或表达式,返回真或假。UQL支持以下比较运算符:

      • 等于:==
      • 不等于:!=
      • 大于:>
      • 小于:<
      • 大于等于:>=
      • 小于等于:<=
      • 开区间:<>
      • 闭区间:<=>
      • 正则匹配:=~
      • 属于:in(请参阅判断包含关系
      • 不属于:nin(请参阅判断包含关系

      本条查询返回age不等于30的用户:

      find().nodes({@User}) as n
      where n.age != 30
      return n
      

      本条查询返回age在25到35之间的用户,且25和35不包括在内:

      find().nodes({@User.age <> [25, 35]}) as n
      return n
      

      本条查询返回age在25到35之间的用户,需包含25和35:

      find().nodes({@User.age <=> [25, 35]}) as n
      return n
      

      本条查询返回email格式为xxx@xxx.comxxx@xxx.cn的用户:

      find().nodes({@User.email =~ "^[a-zA-Z0-9_.-]+@[a-zA-Z0-9]+\.(com|cn)$"}) as n
      return n
      

      字符串运算符

      字符串连接

      +运算符按顺序合并每个字符串的字符,将多个字符串组合成单个字符串。

      return "data" + "base"
      

      结果:

      "data" + "base"
      database

      包含

      contains可用来判断一个字符串是否包含另一个子字符串。

      return "Graph Database@d134" contains "graph"
      

      结果:

      "Graph Database@d134" contains "graph"
      0

      本条查询返回aboutMe中包含graph database的用户:

      find().nodes({@User.aboutMe contains "graph database"}) as n
      return n
      

      包含(全文索引)

      contains与全文索引共同使用时,可用来判断分词标记是否包含所有指定关键词。

      使用全文索引prodDesc查找分词同时包括graph和database的点:

      find().nodes({~prodDesc contains "graph database"}) as n
      return n
      

      更多示例和详细解释,请参阅全文索引

      列表运算符

      构建列表

      []内放置逗号分隔的元素可以创建列表。

      with [1,2,3] as items
      return items
      

      结果:

      items
      [1,2,3]

      []也可用来构建嵌套列表

      with [[1,2],[2,3]] as items
      return items
      

      结果:

      items
      [[1,2],[2,3]]

      访问元素

      使用[]可通过索引来访问列表中的元素。列表索引从0开始,即第一个元素的索引为0

      with ["a", 1, "b"] as items
      return items[0]
      

      结果:

      items[0]
      a

      判断包含关系

      in用来判断特定元素是否在列表中存在。反之,nin用来判断特定元素是否在列表中不存在。

      本条查询返回_id值包含在列表["U01", "U02"]中的点:

      find().nodes({_id in ["U01", "U02"]}) as n 
      return n
      

      本条查询返回_id值不包含在列表["U01", "U02"]中的点:

      find().nodes({_id nin ["U01", "U02"]}) as n 
      return n
      

      去重

      distinct可用来执行去重操作,确保仅保留唯一值。

      本条查询返回用户的唯一age值:

      find().nodes({@User}) as n 
      return distinct n.age
      

      Null谓词

      用来指定对空值的测试。UQL支持以下null谓词:

      • is null
      • is not null

      本条查询获取每个@Paper点的title值,如果值不为空,则返回该值;若值为空,则返回消息TITLE NOT FOUND

      find().nodes({@Paper}) as n
      return case 
        when n.title is not null then n.title
        else "TITLE NOT FOUND"
      end
      
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写