2014-11-28 16 views
6

Attualmente - non sembra essere un modo per determinare se un valore di una proprietà in un nodo (o una relazione) è una matrice/collezione o una stringa.Come determinare il tipo di valore della proprietà all'interno di un nodo in neo4j?

partita (n), dove IsArray (n.myprop) ....

questo sarebbe super utile quando si cerca di capire i tipi di dati che si sta lavorando con relativa ai tuoi aggiornamenti e query. In particolare, se avessi delle situazioni, stavi tentando di aggiornare i valori delle proprietà e dovevi sapere "come" aggiornarle in base a come venivano memorizzati i valori correnti.

risposta

3

In questo momento non c'è nulla di integrato, ma sarebbe una buona aggiunta. Sentiti libero di sollevare un problema su github.

Qualcosa del genere potrebbe aiutare fino ad allora?

CREATE ({ a:1,b:"a",c: [1,2,3]}) 

MATCH (a) 
RETURN size(a.a), 
CASE a.a 
WHEN toInt(a.a) 
THEN 'int' 
WHEN toFloat(a.a) 
THEN 'float' 
WHEN toString(a.a) 
THEN 'string' 
WHEN [x IN a.a | x] 
THEN 'coll' 
WHEN NULL THEN 'null' 
ELSE 'unknown' END , size(a.b), size(a.c) 
+0

È disponibile in> v2.2? – Ray