点过滤查询(1.0.0)
功能介绍
查询满足过滤条件的点集合。
URI
参数 | 是否必选 | 类型 | 说明 |
|---|---|---|---|
project_id | 是 | String | 参数解释: 项目编号。获取方法,请参见获取项目ID。 约束限制: 不涉及。 取值范围: 只能由英文字母和数字组成,且长度为[1-64]个字符。 默认取值: 不涉及。 |
graph_name | 是 | String | 图名称。 |
请求参数
参数 | 是否必选 | 类型 | 说明 |
|---|---|---|---|
labels | labels和vertexFilters两者必选其一 | String | 点类型过滤条件。 |
vertexFilters | labels和vertexFilters两者必选其一 | Object | 过滤条件,按属性过滤,JsonArray格式字符串。 |
offset | 否 | Integer | 本次请求的起始位置。 |
limit | 否 | Integer | 每页资源数量的最大值,默认为10。 |
sorts | 否 | Object | 结果排序的属性,JsonArray格式字符。 |
参数 | 是否必选 | 类型 | 说明 |
|---|---|---|---|
key | Key和propertyName必选其一 | String | 可选值有id、label、property,分别表示对id、label和属性排序。 |
propertyName | Key和propertyName必选其一 | String | 属性名称。 |
orderValue | 否 | String | 可选“incr”和“decr”,分别表示升序和降序,默认值“incr”。 |
参数 | 是否必选 | 类型 | 说明 |
|---|---|---|---|
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”。 说明: has/hasNot:是否有此属性。 |
values | 否 | String | 属性的值。当predicate为full_text_combination时,values类型不是string,详见vertexFilters样例2以及说明。 |
type | 否 | String | 过滤条件逻辑关系,可选值“and”和“or”,默认为“and”。 |
响应参数
参数 | 类型 | 说明 |
|---|---|---|
errorMessage | String | 参数解释: 系统提示信息。
取值范围: 不涉及。 |
errorCode | String | 参数解释: 系统提示信息。
取值范围: 不涉及。 |
jobId | String | 查询节点任务ID。请求失败时字段为空。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考查询Job状态(1.0.0)-业务面。 |
jobType | Integer | 任务类型。请求失败时,该字段为空。 |
请求示例
查询满足过滤条件的点集合,请求的起始位置为0,每页资源数量的最大值为2,用于过滤的属性条件为movie和user,用于过滤的属性名为Age。
POST https://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/vertices/action?action_id=query
{
"offset":0,
"limit":2,
"labels": ["movies",
"user"],
"vertexFilters":[{
"propertyName":"Age",
"predicate":"=",
"values":["18-24"]
}
]
} 
SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
[
{
"propertyName":"Gender",
"predicate":"=",
"values":["F"]
},
{
"propertyName":"Age",
"predicate":"range",
"values":["18-24","56+"],
"type":"or"
}
] "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。
响应示例
状态码: 200
Http Status Code: 200
{
"jobId": "03e774f5-29ea-4187-9508-5435f3892ead016886200",
"jobType": 1
} 状态码: 400
失败响应示例
Http Status Code: 400
{
"errorMessage": "Bad Request, parameter labels and vertexFilters cannot all be null",
"errorCode": "GES.8203"
} 状态码
返回值 | 说明 |
|---|---|
400 Bad Request | 请求错误 |
401 Unauthorized | 鉴权失败 |
403 Forbidden | 没有操作权限 |
404 Not Found | 找不到资源 |
500 Internal Server Error | 服务内部错误 |
503 Service Unavailable | 服务不可用 |
错误码
请参见错误码。

