Find Nodes
resp, _ := client.UQL("find().nodes() as resultNode return resultNode limit 10", nil)
nodes, schemas, err := resp.Alias("resultNode").AsNodes() // get returned column by column name
if err != nil {
log.Fatalln(err)
}
printers.PrintNodes(nodes, schemas)
Find Edges
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)
Find Paths
resp, _ := client.UQL("n().e()[2].n() as resultPaths return resultPaths{*} limit 10", nil)
paths, err := resp.Get(0).AsPaths() // get returned column by index [0], same as 'Alias(resultPaths)' in this example
if err != nil {
log.Fatalln(err)
}
printers.PrintPaths(paths)
Return a Table
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() // same as 'Alias(pairs)' in this example
if err != nil {
log.Fatalln(err)
}
printers.PrintTable(table)
Return an Array
resp, _ := client.UQL(`n({_id == "ULTIPA"}).e().n(as friends) return collect(friends.name) as names`, nil)
array, err := resp.Get(0).AsAttr() // same as 'Alias(names)' in this example
if err != nil {
log.Fatalln(err)
}
printers.PrintAttr(array)
Return Graphs
resp, _ := client.UQL("show().graph()", nil)
graphs, err := resp.Alias(http.RESP_GRAPH_KEY).AsGraphs()
if err != nil {
log.Fatalln(err)
}
printers.PrintGraph(graphs)
Return Schemas
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)
Return Installed Algorithms
resp, _ := client.UQL("show().algo()", nil)
algos, err := resp.Alias(http.RESP_ALGOS_KEY).AsAlgos()
if err != nil {
log.Fatalln(err)
}
printers.PrintAlgoList(algos)
Return Any Data
resp, _ := client.UQL("stats()", nil)
dataitem := resp.Alias(http.RESP_STATISTIC_KEY)
printers.PrintAny(dataitem)