点过滤查询(1.0.0)
功能介绍
查询满足过滤条件的点集合。
URI
参数 |
是否必选 |
类型 |
说明 |
---|---|---|---|
project_id |
是 |
String |
项目ID。获取方法请参见获取项目ID。 |
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”。
说明:
属性复合类型为list或者set时,逻辑关系仅支持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 |
服务不可用 |
错误码
请参见错误码。