文档首页 > > API参考> 业务面API> 点操作API>

点过滤查询(1.0.0)

点过滤查询(1.0.0)

分享
更新时间:2021/02/22 GMT+08:00

功能介绍

查询满足过滤条件的顶点集合。

URI

  • URI 格式
    POST /ges/v1.0/{projectId}/graphs/{graphName}/vertices/action?action_id=query
  • 参数说明
    表1 URI参数说明

    参数

    是否必选

    类型

    说明

    projectId

    String

    项目编号,用于资源隔离。请参考获取项目ID

    graphName

    String

    图名称。

请求

  • 请求样例
    POST https://{SERVER_URL}/ges/v1.0/{projectId}/graphs/{graphName}/vertices/action?action_id=query  
    
    {
       "offset":0,
       "limit":2,
       "labels": ["movies",
                 "user"],
       "vertexFilters":[{
          "propertyName":"Age",
          "predicate":"=", 
          "values":["18-24"]
          }
       ]
    } 

    SERVER_URL:图的访问地址,取值请参考业务面API使用限制

  • 参数说明
    表2 Body参数说明

    参数

    是否必选

    类型

    说明

    labels

    labels和vertexFilters两者必选其一

    String

    顶点类型过滤条件。

    vertexFilters

    labels和vertexFilters两者必选其一

    Json

    过滤条件,按属性过滤,JsonArray格式字符串。

    offset

    Integer

    本次请求的起始位置。

    limit

    Integer

    每页资源数量的最大值,默认为10。

    sorts

    Json

    结果排序的属性,JsonArray格式字符。

    表3 sorts参数说明

    参数

    是否必选

    类型

    说明

    key

    Key和propertyName必选其一

    String

    可选值有id、label、property,分别表示对id、label和属性排序。

    propertyName

    Key和propertyName必选其一

    String

    属性名称。

    orderValue

    String

    可选“incr”和“decr”,分别表示升序和降序,默认值“incr”。

    表4 vertexFilters参数结构

    参数

    是否必选

    类型

    说明

    propertyName

    String

    属性名称。

    predicate

    String

    逻辑关系,可选值“=”、“<”、“>”、“<=”、“>=”、“range”、“has”“hasNot”、“full_text_match”、“full_text_prefix”、“full_text_wildcard”、“full_text_regexp”“full_text_fuzzy” full_text_combination”

    values

    String

    属性的值。predicatefull_text_combination时,values类型不是string,详见vertexFilters样例2以及说明。

    type

    String

    过滤条件逻辑关系,可选值“and”和“or”,默认为“and”。

  • vertexFilters样例1
    [
     {
       "propertyName":"Gender",
       "predicate":"=",
       "values":["F"]
     },
     {
       "propertyName":"Age",
       "predicate":"range", 
       "values":["18-24","56+"],
       "type":"or"
     }
    ]
  • vertexFilters样例2(full_text_combination)
    "vertexFilters": [
            {
                "propertyName": "propertyName",
                "predicate": "full_text_combination",
                "values": [
                    {
                        "propertyName": "movieid",
                        "value": "0"
                    },
                    {
                        "propertyName": "title",
                        "value": "american"
                    }
                ]
            }
        ]

    当predicate为“full_text_match”、“full_text_prefix”、“full_text_wildcard”、“full_text_regexp”和“full_text_fuzzy”、“full_text_combination”时,vertexFilters列表中只能有一个元素,即不能有多层过滤并列存在。labels参数不可以同时出现。当predicate为“full_text_combination”时,最外层的propertyName直接设置为“propertyName”即可, values不再是简单的string类型列表,values的每个元素有“propertyName”和“value”两个成员。如果您想使用以上全文索引的能力,需要预先调用创建全文索引的API。

响应

表5 要素说明

参数

是否必选

类型

说明

errorMessage

String

系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。

errorCode

String

系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。

jobId

String

查询节点任务ID。请求失败时字段为空。

说明:

可以查询jobId查看任务执行状态、获取返回结果,详情参考查询Job状态(1.0.0)-业务面

  • 请求成功样例
    Http Status Code: 200
    {
        "jobId": "03e774f5-29ea-4187-9508-5435f3892ead016886200",
        "jobType": 1
    }
  • 请求失败样例
    Http Status Code: 400
    {
        "errorMessage": "Bad Request, parameter labels and vertexFilters cannot all be null",
        "errorCode": "GES.8203"
    }

返回值

  • 正常

    200

  • 异常
    表6 异常返回值说明

    返回值

    说明

    400 Bad Request

    请求错误

    401 Unauthorized

    鉴权失败

    403 Forbidden

    没有操作权限

    404 Not Found

    找不到资源

    500 Internal Server Error

    服务内部错误

    503 Service Unavailable

    服务不可用

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问