修改密码

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

      运算符

      所有运算符

      分类
      运算符
      属性运算符 引用属性.
      属性存在谓词PROPERTY_EXISTS()
      逻辑运算符 ANDORXORNOT
      算术运算符 +-*/%^
      比较运算符 =<>><>=<=
      字符运算符 字符串联||
      规范化谓词IS NORMALIZED, IS NOT NORMALIZED
      列表运算符 构建列表[]
      访问元素[]
      判断包含关系IN
      列表串联||
      路径运算符 构建路径PATH[]
      路径串联||
      记录运算符 构建记录RECORD{}
      引用字段.
      Exists谓词 EXISTS
      Null谓词 IS NULLIS NOT NULL
      值类型谓词 IS TYPEDIS NOT TYPED
      标签谓词 IS LABELEDIS NOT LABELED:
      起/终谓词 IS SOURCE OF, IS NOT SOURCE OF, IS DESTINATION OF, IS NOT DESTINATION OF
      有向谓词 IS DIRECTED, IS NOT DIRECTED
      完全不同谓词 ALL DIFFERENT()
      相同谓词 SAME()
      属性存在谓词 PROPERTY_EXISTS()
      布尔值谓词 IS TRUE, IS FALSE

      属性运算符

      引用属性

      .(句点)可用来引用图元素的属性。

      MATCH (n)
      RETURN n._id LIMIT 10
      

      属性存在谓词

      PROPERTY_EXISTS(<elemVar>, <propertyName>)谓词用来确定引用的图元素属性是否存在。

      详情

      • 每个<elemVar>必须有单例引用度。

      MATCH (n:User) LIMIT 1
      RETURN PROPERTY_EXISTS(n, "uuid")
      

      逻辑运算符

      AND

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

      AND运算符的真值表:

      AND

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

      MATCH (n:User)
      WHERE n.age > 30 AND n.incomeGroup = 4
      RETURN n
      

      OR

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

      OR运算符的真值表:

      OR

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

      MATCH (n:Person)
      WHERE n.age > 30 OR n.incomeGroup = 4
      RETURN n
      

      XOR

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

      XOR运算符的真值表:

      XOR

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

      MATCH (n:Person)
      WHERE n.age > 30 XOR n.incomeGroup = 4
      RETURN n
      

      NOT

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

      NOT运算符的真值表:

      NOT

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

      MATCH (n:Person)
      WHERE NOT n.age = 30
      RETURN n
      

      算术运算符

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

      • 加:+
      • 减:-
      • 乘:*
      • 除:/
      • 取余:%
      • 取幂:^

      RETURN (2+8)%3
      

      结果:

      (2+8)%3
      1

      比较运算符

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

      • 等于:=
      • 不等于:<>
      • 大于:>
      • 小于:<
      • 大于等于:>=
      • 小于等于:<=

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

      MATCH (n:Person)
      WHERE n.age <> 30
      RETURN n
      

      字符运算符

      字符串联

      串联运算符||将多个字符串按顺序合并成单个字符串。

      RETURN "data" || "base"
      

      结果:

      "data" || "base"
      database

      规范化谓词

      判断字符串是否规范化。GQL支持以下规范化谓词:

      • IS [ <normal form> ] NORMALIZED
      • IS NOT [ <normal form> ] NORMALIZED

      详情

      • <normal form>规范化形式默认为NFC。其他可用规范化形式包括NFDNFKCNFKD

      RETURN "Å" IS NORMALIZED AS normRes
      

      结果:

      normRes
      1

      RETURN "Å" IS NFD NORMALIZED AS normRes
      

      结果:

      normRes
      0

      列表运算符

      构建列表

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

      LET items = [1,2,3]
      RETURN items
      

      结果:

      items
      [1,2,3]

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

      LET items = [[1,2],[2,3]]
      RETURN items
      

      结果:

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

      访问元素

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

      LET items = ["a", 1, "b"]
      RETURN items[0]
      

      结果:

      items[0]
      a

      判断包含关系

      IN用来判断特定元素是否在列表中存在。1表示条件为真,0表示条件为假。

      RETURN 2 IN [1,2,3] AS inList
      

      结果:

      inList
      1

      运算符IN可以根据元素是否属于指定列表来有效筛选图元素。例如,本条查询获取_id为U01或U02的点:

      MATCH (n) WHERE n._id IN ["U01", "U02"]
      RETURN n
      

      列表串联

      串联运算符||将多个列表按顺序合并成单个列表。

      RETURN [1,2,3] || [3,4,5] AS newList
      

      结果:

      newList
      [1,2,3,3,4,5]

      路径运算符

      构建路径

      PATH[]通过按顺序枚举点和边创建路径。

      <path value constructor> ::= "PATH[" <path element list> "]"
      
      <path element list> ::= <node reference> [ <path element list step>... ]
      
      <path element list step> ::= "," <edge reference> "," <node reference>
      

      详情

      • 如果<path element list>包含null值或未识别出路径,则会引发异常:路径格式错误

      MATCH (n1 {_id: "U01"}), (n2 {_id: "U02"}), -[e {_uuid:39}]->
      RETURN PATH[n2, e, n1]
      

      路径串联

      串联运算符||将多个路径连结成单个连续路径,即前一条路径的终点和后一条路径的起点相同时,两条路径会合并成一条。若前后路径不符合该条件,则会引发异常:路径格式错误

      MATCH p1 = ({_id: "U01"})->(n), p2 = (n)->()
      RETURN p1 || p2
      

      记录运算符

      构建记录

      RECORD{}通过指定字段创建记录。

      <record constructor> ::=
        [ "RECORD" ] "{" [ <field> [ { "," <field> }... ] ] "}"
      
      <field> ::= <field name> ":" <value expression>
      

      LET rec = RECORD{length: 20, width: 59, height: 10}
      RETURN rec.length
      

      结果:

      rec.length
      20

      引用字段

      .(句点)可用来引用记录的字段。

      LET rec = RECORD{length: 20, width: 59, height: 10}
      RETURN rec.length * rec.width * rec.height AS capacity
      

      结果:

      capacity
      11800

      Exists谓词

      EXISTS谓词用来判断指定的图模式或查询是否有结果返回。如果发现匹配数据,谓词判断结果为真,否则为假。请注意,MATCH语句不支持使用EXISTS

      <exists predicate> ::= 
        "EXISTS" {
            "{" <graph pattern> "}"
          | "(" <graph pattern> ")"
          | "{" { <match statement>... } "}"
          | "(" { <match statement>... } ")"
          | <nested query specification>
        }
                 
      <nested query specification> ::= "{" <query specification> "}"
      

      本条查询判断图中是否存在以点A为起点的路径,并以布尔值返回判断结果:

      RETURN EXISTS {({_id:"A"})->()}
      

      本条查询判断图中是否存在这样一条路径,其起点为A,终点为B,边的score值大于2,并以布尔值返回判断结果:

      RETURN EXISTS {
        MATCH ({_id: "A"})-[e]->({_id: "B"})
        WHERE e.score > 2
      }
      

      本条查询判断列表中是否有元素大于3,并以布尔值返回判断结果:

      RETURN EXISTS {
        FOR item in [1,2,3]
        FILTER item > 3
        RETURN item
      }
      

      Null谓词

      用来测试是否为null值。GQL支持以下null谓词:

      • IS NULL
      • IS NOT NULL

      本条查询获取每个点:Papertitle,前提是title属性值非空;若无符合条件的点,则返回信息为TITLE NOT FOUND

      MATCH (n:Paper)
      RETURN CASE 
        WHEN n.title IS NOT NULL THEN n.title
        ELSE "TITLE NOT FOUND"
      END
      

      值类型谓词

      用来确认值是否符合某个特定类型。GQL支持以下值类型谓词:

      • IS TYPED <value type>
      • IS NOT TYPED <value type>

      详情

      • 目前<value type>支持以下数据类型关键字:STRINGBOOL

      RETURN "a" IS TYPED BOOL AS typeCheck
      

      结果:

      typeCheck
      0

      标签谓词

      用来确认图元素是否满足标签表达式。GQL支持以下值类型谓词:

      • IS LABELED
      • IS NOT LABELED
      • :

      MATCH (n) WHERE n IS NOT LABELED Paper
      RETURN n
      

      MATCH (n:Paper)
      RETURN n
      

      起/终谓词

      确认点是否为边的起点或终点。GQL支持以下起/终谓词:

      • <node reference> IS SOURCE OF <edge reference>
      • <node reference> IS NOT SOURCE OF <edge reference>
      • <node reference> IS DESTINATION OF <edge reference>
      • <node reference> IS NOT DESTINATION OF <edge reference>

      MATCH (n {_id: "P1"}), ()-[e:Cites]->() WHERE n IS SOURCE OF e
      RETURN e
      

      有向谓词

      有向谓词用来确认边变量是否与右向边绑定。GQL支持以下有向谓词:

      • IS DIRECTED
      • IS NOT DIRECTED

      详情

      • 嬴图数据库中创建的所有边均为有向边。

      MATCH ()-[e]-()
      RETURN e IS DIRECTED
      

      结果:

      e IS DIRECTED
      1

      完全不同谓词

      用来确认与元素变量列表绑定的所有图元素是否两两不同。GQL支持以下完全不同谓词:

      • ALL_DIFFERENT(<elemVar>, <elemVar>[{,<elemVar>}...])

      详情

      • 每个<elemVar>必须具有单例引用度。
      • <elemVar>不能与null值绑定。
      • <elemVar>绑定的所有值必须有可比性。

      MATCH (n1:User {_id: "U05"}), (n2)-[:Joins]->(n3)
      RETURN n1._id, n2._id, n3._id, ALL_DIFFERENT(n1, n2, n3)
      

      结果:

      n1._id n2._id n3._id
      ALL_DIFFERENT(n1, n2, n3)
      U05 U05 C01 0
      U05 U04 C02 1
      U05 U02 C01 1

      相同谓词

      用来确认是否所有元素变量均绑定了相同的图元素。GQL支持以下相同谓词:

      • SAME(<elemVar>, <elemVar>[{,<elemVar>}...])

      详情

      • 每个<elemVar>必须具有单例引用度。
      • <elemVar>不能与null值绑定。
      • <elemVar>绑定的所有值必须有可比性。

      MATCH (n1:User {_id: "U05"}), ()-[:Follows]->(n2), (n3)-[:Joins]->()
      RETURN n1._id, n2._id, n3._id, SAME(n1, n2, n3)
      

      结果:

      n1._id n2._id n3._id
      SAME(n1, n2, n3)
      U05 U03 U04 0
      U05 U03 U05 0
      U05 U05 U04 0
      U05 U05 U05 1

      布尔值谓词

      用来判断布尔表达式或变量是否真实,即判断其为真还是为假。GQL支持一下布尔值谓词:

      • IS TRUE
      • IS FALSE

      RETURN 1 > 2 IS TRUE
      

      结果:

      1 > 2 IS TRUE
      0
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写