Could be easier to bring everything to upper case or lower case using LOWER() and UPPER() string functions
1- Let's suppose I have a node with a property name = 'name' in lower case, to find it you need to match againt the exact string
Query:
CYPHER 2.0
START n=node(*)
WHERE n.name= "name"
RETURN id(n)
id(n)
5
Query took 3 ms and returned 1 rows.
otherwise you will not find it :
Query:
CYPHER 2.0
START n=node(*)
WHERE n.name= "Name"
RETURN id(n)
Query took 4 ms and returned no rows.
But, we can match it using string function LOWER():
CYPHER 2.0
START n=node(*)
WHERE n.name= LOWER("Name")
RETURN id(n)
id(n)
5
Query took 4 ms and returned 1 rows.
2- With node property entered with arbitrary string case ex: "NaMe", to match against :
START n=node(*)
WHERE LOWER(n.name)= "name"
RETURN id(n)
id(n)
8
Query took 5 ms and returned 1 rows.