@Override public Traversal<Vertex, Vertex> get_g_V_hasXage_gt_30X() { return g.V().has("age", P.gt(30)); }
@Override public Traversal<Vertex, String> get_g_V_orXhasXage_gt_27X__outE_count_gte_2X_name() { return g.V().or(has("age", P.gt(27)), outE().count().is(P.gte(2l))).values("name"); }
@Override public Traversal<Vertex, Vertex> get_g_V_hasXname_gtXmX_andXcontainingXoXXX() { return g.V().has("name", P.gt("m").and(TextP.containing("o"))); } }
@Override public Traversal<Vertex, String> get_g_V_outXcreatedX_hasXname__mapXlengthX_isXgtX3XXX_name() { return g.V().out("created").has("name", __.<String, Integer>map(s -> s.get().length()).is(P.gt(3))).values("name"); }
@Test public void testQueryByIntPropUsingGtWithOneResult() { // age > 20 HugeGraph graph = graph(); initPersonIndex(false); init5Persons(); List<Vertex> vertexes = graph.traversal().V() .hasLabel("person").has("age", P.gt(20)) .toList(); Assert.assertEquals(1, vertexes.size()); }
@Override public Traversal<Vertex, String> get_g_VX1X_asXaX_out_hasXageX_whereXgtXaXX_byXageX_name(final Object v1Id) { return g.V(v1Id).as("a").out().has("age").where(gt("a")).by("age").values("name"); } }
@Override public Traversal<Vertex, String> get_g_V_chooseXoutXknowsX_count_isXgtX0XX__outXknowsXX_name() { return g.V().choose(out("knows").count().is(P.gt(0)), out("knows")).values("name"); }
@Test public void testQueryByIntPropUsingGtWithMultiResults() { // age > 1 HugeGraph graph = graph(); initPersonIndex(false); init5Persons(); List<Vertex> vertexes = graph.traversal().V() .hasLabel("person").has("age", P.gt(1)) .toList(); Assert.assertEquals(5, vertexes.size()); }
@Test public void testQueryByIntPropUsingGtWithNonResult() { // age > 30 HugeGraph graph = graph(); initPersonIndex(false); init5Persons(); List<Vertex> vertexes = graph.traversal().V() .hasLabel("person").has("age", P.gt(30)) .toList(); Assert.assertEquals(0, vertexes.size()); }
@Test public void testQueryByJointIndexesWithRangeIndex() { initPersonIndex(true); graph().addVertex(T.label, "person", "name", "Tom", "city", "Hongkong", "age", 3); List<Vertex> vertices; vertices = graph().traversal().V().has("age", P.gt(2)) .has("city", "Hongkong").toList(); Assert.assertEquals(1, vertices.size()); }
@Test public void testQueryInVerticesOfVertexAndFilter() { HugeGraph graph = graph(); init18Edges(); Vertex java3 = vertex("book", "name", "java-3"); // NOTE: the has() just filter by vertex props List<Vertex> vertices = graph.traversal().V(java3.id()) .in("look").has("age", P.gt(22)) .toList(); Assert.assertEquals(2, vertices.size()); }
private static GraphTraversal<?, ?> transform(final E_GreaterThan expression) { final Object value = expression.getArg2().getConstant().getNode().getLiteralValue(); return __.as(expression.getArg1().getVarName()).is(P.gt(value)); }
@Override public Traversal<Vertex, Map<String, String>> get_g_V_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXa_gtXbXX_byXageX_selectXa_bX_byXnameX() { return g.V().as("a").out("created").in("created").as("b").where("a", gt("b")).by("age").<String>select("a", "b").by("name"); }
@Override public Traversal<Vertex, String> get_g_V_both_groupCountXaX_byXlabelX_asXbX_barrier_whereXselectXaX_selectXsoftwareX_isXgtX2XXX_selectXbX_name() { return g.V().both().groupCount("a").by(T.label).as("b").barrier().where(__.select("a").select("software").is(gt(2))).select("b").values("name"); } }
@Override public Traversal<Vertex, Map<String, String>> get_g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_whereXa_gtXbX_orXeqXbXXX_byXageX_byXweightX_byXweightX_selectXa_cX_byXnameX() { return g.V().as("a").outE("created").as("b").inV().as("c").where("a", gt("b").or(eq("b"))).by("age").by("weight").by("weight").<String>select("a", "c").by("name"); }
public static List<Path> shortestPath(final HugeGraph graph, Object from, Object to, int maxDepth) { GraphTraversal<Vertex, Path> t = graph.traversal() .V(from) .repeat(__.out().simplePath()) .until(__.hasId(to).or().loops().is(P.gt(maxDepth))) .hasId(to) .path().by("name") .limit(1); return t.toList(); }
@Override public Traversal<Vertex, Map<String, Object>> get_g_V_asXaX_out_asXbX_matchXa_out_count_c__orXa_knows_b__b_in_count_c__and__c_isXgtX2XXXX() { return g.V().as("a").out().as("b"). match( as("a").out().count().as("c"), or( as("a").out("knows").as("b"), as("b").in().count().as("c").and().as("c").is(P.gt(2)) ) ); }
@Override public Traversal<Vertex, Map<String, String>> get_g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX() { return g.V().as("a").outE("created").as("b").inV().as("c").in("created").as("d").where("a", lt("b").or(gt("c")).and(neq("d"))).by("age").by("weight").by(in("created").values("age").min()).<String>select("a", "c", "d").by("name"); }
@Override public Traversal<Vertex, Map<String, Object>> get_g_V_matchXa_whereXa_neqXcXX__a_created_b__orXa_knows_vadas__a_0knows_and_a_hasXlabel_personXX__b_0created_c__b_0created_count_isXgtX1XXX_selectXa_b_cX_byXidX() { return g.V().match( where("a", P.neq("c")), as("a").out("created").as("b"), or( as("a").out("knows").has("name", "vadas"), as("a").in("knows").and().as("a").has(T.label, "person") ), as("b").in("created").as("c"), as("b").in("created").count().is(P.gt(1))) .select("a", "b", "c").by(T.id); }