查找点
resp, _ := client.UQL("find().nodes() as resultNode return resultNode limit 10", nil)
nodes, schemas, err := resp.Alias("resultNode").AsNodes() // 通过列名获取返回值中的列
if err != nil {
log.Fatalln(err)
}
printers.PrintNodes(nodes, schemas)
查找边
resp, _ := client.UQL("find().edges() as resultEdge return resultEdge limit 10", nil)
edges, schemas, err := resp.Alias("resultEdge").AsEdges()
if err != nil {
log.Fatalln(err)
}
printers.PrintEdges(edges, schemas)
查找路径
resp, _ := client.UQL("n().e()[2].n() as resultPaths return resultPaths{*} limit 10", nil)
paths, err := resp.Get(0).AsPaths() // 通过下标获取返回值中的列,此处等同于 'Alias(resultPaths)'
if err != nil {
log.Fatalln(err)
}
printers.PrintPaths(paths)
返回表格
resp, _ := client.UQL("n(as startNode).e()[2].n(as endNode) return table(startNode._id, endNode._id) as pairs limit 10", nil)
table, err := resp.Get(0).AsTable() // 此处等同于 'Alias(pairs)'
if err != nil {
log.Fatalln(err)
}
printers.PrintTable(table)
返回数组
resp, _ := client.UQL(`n({_id == "ULTIPA"}).e().n(as friends) return collect(friends.name) as names`, nil)
array, err := resp.Get(0).AsAttr() // 此处等同于 'Alias(names)'
if err != nil {
log.Fatalln(err)
}
printers.PrintAttr(array)
返回图集信息
resp, _ := client.UQL("show().graph()", nil)
graphs, err := resp.Alias(http.RESP_GRAPH_KEY).AsGraphs()
if err != nil {
log.Fatalln(err)
}
printers.PrintGraph(graphs)
返回 Schema 信息
resp, _ := client.UQL("show().schema()", nil)
nodeSchemas, err := resp.Alias(http.RESP_NODE_SCHEMA_KEY).AsSchemas()
if err != nil {
log.Fatalln(err)
}
edgeSchemas, err := resp.Alias(http.RESP_EDGE_SCHEMA_KEY).AsSchemas()
if err != nil {
log.Fatalln(err)
}
printers.PrintSchema(nodeSchemas)
printers.PrintSchema(edgeSchemas)
返回算法信息(已安装)
resp, _ := client.UQL("show().algo()", nil)
algos, err := resp.Alias(http.RESP_ALGOS_KEY).AsAlgos()
if err != nil {
log.Fatalln(err)
}
printers.PrintAlgoList(algos)
返回统计信息
resp, _ := client.UQL("stats()", nil)
dataitem := resp.Alias(http.RESP_STATISTIC_KEY)
printers.PrintAny(dataitem)