Cypher Where - SepiaGroup/Neo4jRestNet GitHub Wiki

Home > Cypher Index

  1. Boolean operations
  2. Filter on node property
  3. Regular expressions
  4. Escaping in regular expressions
  5. Filtering on relationship type
  6. Property exists
  7. Compare if property exists
  8. Filter on null values

1. Boolean operations

var cypher = new Cypher();
cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => (w.Node("n").Property("age") < 30 && w.Node("n").Property("name") == "Tobias") 
                    || w.Node("n").Property("name") != "Tobias");
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

2. Filter on node property

var cypher = new Cypher();
cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => (w.Node("n").Property("age") < 30);
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

3. Regular expressions

var cypher = new Cypher();
cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => (w.Node("n").Property("name").RegEx("regexp"));
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

4. Escaping in regular expressions

var cypher = new Cypher();
cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => (w.Node("n").Property("name").RegEx("Some\/thing"));
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

5. Filtering on relationship type

var cypher = new Cypher();
cypher.Start(s => s.Node("n", 3));
cypher.Match(m => m.Node("n").To("r", null).Node());
cypher.Where(w => w.RelationshipType("r").RegEx("K.*"));
cypher.Return(r => r.Relationship("r"));
var tblResult = cypher.Post();

6. Property exists

cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => w.Node("n").Property("belt"));
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

7. Compare if property exists

cypher.Start(s => s.Node("n", 3, 1));
cypher.Where(w => w.Node("n").Property("belt", true) == "white");
cypher.Return(r => r.Node("n"));
var tblResult = cypher.Post();

8. Filter on null values

cypher.Start(s => s.Node("a", 1).Node("b", 3, 2));
cypher.Match(m => m.Node("a").From("r", null, true).Node("b"));
cypher.Where(w => w.Relationship("r") == null);
cypher.Return(r => r.Node("b"));
var tblResult = cypher.Post();