命令、参数
查询图集中的边,可以对边进行多种过滤,并返回满足条件的边。类似于传统数据库中的表查询操作。
语法:
- 命令:
find()
- 必选参数:
edges()
- 全部参数:(见下表)
- 语句别名类型:EDGE(别名默认为 edges)
参数 | 类型 | 规范 | 描述 | 参数别名类型 |
---|---|---|---|---|
edges() |
filter | / | 边的过滤条件 | 不支持自定义别名 |
边查询的语句别名默认值 edges 是点查询命令的末尾没有手动定义别名时由系统默认定义的,如果使用系统默认定义的别名,则不能在后面的语句中再次使用 edges 为其它数据定义别名,否则会引发重名报错。
无条件查询
示例:查询 100 个边,携带全部属性值
find().edges() as e
limit 100
return e{*}
按 UUID 查询
示例:查询 UUID 为 1、2、3 的边,携带全部属性值
find().edges([1,2,3]) as e
return e{*}
按 FROM 查询
示例:查询 10 个以 UUID 为 1 的点为起点的边,携带全部属性值
find().edges({_from_uuid == 1}) as e
limit 10
return e{*}
示例:查询 10 个从银行卡 CA001 转出的交易,携带全部属性值
find().edges({_from == "CA001"}) as e
limit 10
return e{*}
按 TO 查询
示例:查询 10 个以 UUID 为 1 的点为终点的边,携带全部属性值
find().edges({_to_uuid == 1}) as e
limit 10
return e{*}
示例:查询 10 个转入到银行卡 CA001 的交易,携带全部属性值
find().edges({_to == "CA001"}) as e
limit 10
return e{*}
按 Schema 查询
示例:查询 schema 为 transfer 的 10 个边,携带全部属性值
find().edges({@transfer}) as e
limit 10
return e{*}
按属性值查询
示例:查询属性 time 大于 2022-04-02 0:0:0 的 10 个边,携带全部属性值
find().edges({time > "2022-04-02 0:0:0"}) as e
limit 10
return e{*}
按 Schema、属性值查询
示例:查询 schema 为 transfer 且 time 大于 2022-04-02 0:0:0 的 10 个边,携带全部属性值
find().edges({@transfer.time > "2022-04-02 0:0:0"}) as e
limit 10
return e{*}
使用默认的语句别名
示例:查询 10 个边,携带全部属性值
find().edges()
limit 10
return edges{*}