修改密码

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

      值和类型

      UQL使用多种值和类型来表示图数据库中的信息。理解这些值和类型对实现有效查询和数据操作至关重要。

      图类型

      图类型指的是从数据库中获取的数据类型,包括点、边和路径。

      类型
      描述
      NODE 代表一个点,包含schema和属性集
      EDGE 代表一条边,包含schema和属性集
      PATH 代表一条路径,包含构成路径的点边序列

      属性值类型

      属性值类型指属性值的数据类型。嬴图支持以下属性值类型:

      分类 支持的类型 描述
      数值 int32 有符号32位整数(-2,147,483,648到2,147,483,647)
      uint32 无符号32位整数(0到4,294,967,295)
      int64 有符号64位整数(-9,223,372,036,854,775,808到9,223,372,036,854,775,807)
      uint64 无符号64位整数(0到18,446,744,073,709,551,615)
      float 32位单精度浮点数,6至7位有效数字(整数和小数部分,不包括小数点)
      double 64位双精度浮点数,15至16位有效数字(整数和小数部分,不包括小数点)
      decimal 数字可以有指定的精度(1到65)和标度(0到30)。例如,decimal(10,4)代表这样一个小数,其精度为10(所有数字的位数,不包括小数点),其标度为4(小数点后的数字位数)
      文本 string 不超过60000字节的字符序列,是创建属性时的默认值类型
      text 长度不限的字符序列
      时间 datetime 时间日期值,范围从1000-01-01 00:00:00.000000到9999-12-31 23:59:59.499999,以uint64类型存储
      timestamp 相对于格林威治时间1970年1月1日0时0分0秒后的一个具体时间点,以秒为单位,以uint32类型存储

      注意:如果输入了日期和时间格式的值,系统会根据本地时区或SDK的RequestConfig设置的时区,将该值转换成时间戳。 同理,如果时间戳以日期和时间格式展示,系统会根据本地时区或SDK的RequestConfig设置的时区转换该值
      布尔 bool 包括两个可能的值:0表示为真,1表示为假
      空间 point 代表具体地理位置的二维坐标;两个坐标值以double类型存储
      列表 <subType>[] 元素的有序集合,支持子类型int32uint32int64uint64floatdoublestringtextdatetimetimestamp
      集合 set(<subType>) 不重复元素的有序集合,支持子类型int32uint32int64uint64floatdoublestringtextdatetimetimestamp

      构造值类型

      构造值类型是包含复合元素的数据类型。UQL支持以下构造值类型:

      类型
      描述
      list 同源元素或异源元素的有序集合

      结果类型

      结果类型指的是查询返回值的数据类型。嬴图定义了以下结果类型。

      RESULT_TYPE_NODE

      本条查询返回所有@Paper点的信息:

      find().nodes({@Paper}) as n
      return n{*}
      

      n的数据结构:

      {
        "data": [
          {
            "id": "P2",
            "uuid": "8718971077612535835",
            "schema": "Paper",
            "values": {
              "title": "Optimizing Queries",
              "score": 9
            }
          },
          {
            "id": "P1",
            "uuid": "8791028671650463770",
            "schema": "Paper",
            "values": {
              "title": "Efficient Graph Search",
              "score": 6
            }
          }
        ],
        "alias": "n",
        "type": 2,
        "type_desc": "RESULT_TYPE_NODE"
      }
      

      RESULT_TYPE_EDGE

      本条查询返回出边@Cites的所有信息:

      n().re({@Cites} as e).n()
      return e{*}
      

      e的数据结构:

      {
        "data": [
          {
            "from": "P1",
            "to": "P2",
            "uuid": "1",
            "from_uuid": "8791028671650463770",
            "to_uuid": "8718971077612535835",
            "schema": "Cites",
            "values": {
              "weight": 2
            }
          }
        ],
        "alias": "e",
        "type": 3,
        "type_desc": "RESULT_TYPE_EDGE"
      }
      

      RESULT_TYPE_PATH

      本条查询返回一步出向路径的所有信息:

      n().re().n() as p
      return p{*}
      

      p的数据结构:

      {
        "data": [
          {
            "nodes": [
              {
                "id": "P1",
                "uuid": "8791028671650463770",
                "schema": "Paper",
                "values": {
                  "title": "Efficient Graph Search",
                  "score": 6
                }
              },
              {
                "id": "P2",
                "uuid": "8718971077612535835",
                "schema": "Paper",
                "values": {
                  "title": "Optimizing Queries",
                  "score": 9
                }
              }
            ],
            "edges": [
              {
                "from": "P1",
                "to": "P2",
                "uuid": "1",
                "from_uuid": "8791028671650463770",
                "to_uuid": "8718971077612535835",
                "schema": "Cites",
                "values": {
                  "weight": 2
                }
              }
            ],
            "length": 1
          }
        ],
        "alias": "p",
        "type": 1,
        "type_desc": "RESULT_TYPE_PATH"
      }
      

      RESULT_TYPE_ATTR

      本条查询返回点@Papertitle属性:

      find().nodes({@Paper}) as n
      return n.title
      

      n.title的数据结构:

      {
        "data": {
          "alias": "n.title",
          "type": 4,
          "type_desc": "RESULT_TYPE_ATTR",
          "values": [
            "Optimizing Queries",
            "Efficient Graph Search"
          ]
        },
        "alias": "n.title",
        "type": 4,
        "type_desc": "RESULT_TYPE_ATTR"
      }
      

      RESULT_TYPE_TABLE

      本条查询返回一个表:

      find().nodes({@Paper}) as n
      return table(n.title, n.score) as table
      

      table的数据结构:

      {
        "data": {
          "name": "table",
          "alias": "table",
          "headers": [
            "n.title",
            "n.score"
          ],
          "rows": [
            [
              "Optimizing Queries",
              "9"
            ],
            [
              "Efficient Graph Search",
              "6"
            ]
          ]
        },
        "alias": "table",
        "type": 5,
        "type_desc": "RESULT_TYPE_TABLE"
      }
      

      Null值

      null值是一种特殊值,在所有可空类型中使用。任何非空值都是有效值。

      Null情景

      null值可在多种情况下出现,如:

      • 默认分配值:在插入点或边时,若未指定属性值给可空属性,则自动接收null值。
      • 显式指定Null值:在插入点或边时,可空属性可被专门指定为null
      • 删除属性值:删除属性原有值并用null替代。
      • 分配新属性:向schema添加新属性时,默认情况下,该schema下已有的点或边,对应的新属性将被赋予null值。
      • 不存在的属性引用:引用不存在的属性会返回null值。
      • 可选匹配:当关键字OPTIONAL与语句 find()khop()等连用时,若没有找到结果,则语句生成null值而非空返回。

      Null比较

      null值本质上未知,因此无法和其他值进行比较。涉及null的比较若使用了=>等普通运算符,通常不会生成真或假的结果,而是产生一个未知结果,也表示为null

      示例
      结果
      RETURN null = null null
      RETURN null > 3 null
      RETURN [1,null,2] <> [1,null,2] null
      RETURN 3 IN [1,null,2] null
      RETURN null IN [1,2] null
      RETURN null IN [] 0

      涉及null的比较需要用到null谓词(IS NULLIS NOT NULL)作特殊处理。

      示例
      结果
      RETURN null IS NULL 1
      RETURN null IS NOT NULL 0

      Null处理

      在某些情况下,null值会得到特殊处理,例如:

      • 聚合函数通常忽略null值。
      • 语句GROUP BY将所有null值归为一组。
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写