2016-03-24 22 views
0

Neo4j Cypher'i öğrenmeye başladım. Neo4j örnek film grafik veritabanı kullanıyorum.NEo4j Sorgu Sonucu

Cypher, 1964 sonucu döndüren NULL değerini yazıp yazmasını beklediğim Cypher I yazıyor ve bekliyor.

Lütfen bana bildirin.

MATCH (tom: Kişi) Burada tom.Name = "Tom Hanks", tom.born; Neo4j Öğreticisi'nden geçerken İlişkinin mülk sahibi olduğunu buldum. Sorguyu çalıştırdığımda da NULL ile sonuçlanır. "ACTED_IN" İlişkisi ile ilişki beklerken nerede rol bekliyorum. Yani "rol" değerini döndürmelidir.

match (: Kişi {name: 'Keanu Reeves'}) - [rel] -> (M) RETURN M.title, rel.property;

Şimdiden teşekkürler.

Selamlar Faizan

+0

MAÇ (başına: Kişi {Adı: "Tom Hanks"}) return per.born; Ayrıca Tom Hanks için doğmak için yazılan cypher ama sorgu geri dönüş null. Ama yazarken Ters cypher yani doğumu veren yıl ve isim almak mümkün. Burada cypher MATCH (kişi başına: Kişi {doğmuş: 1964}) dönüşü. Yani neden yazarken null alıyorum adıyorum doğumu yıl bulmak için deneyin. – Faiz

cevap

2

Özellikleri harf duyarlıdır. name özelliği Name kullanıyorsunuz. Deneyin: Diğer sorgu için

MATCH (tom:Person) WHERE tom.name = "Tom Hanks" RETURN tom.born; 

, property:ACTED_IN ilişkisi üzerinde özellik değildir. Bu roles denir. Deneyin:

MATCH (:Person {name:'Keanu Reeves'})-[rel]->(M) 
RETURN M.title, rel.roles; 

o ilişkiye özelliklerinin tuşları isterseniz:

MATCH (:Person {name:'Keanu Reeves'})-[rel]->(M) 
RETURN M.title, KEYS(rel); 
+0

Bilgi için teşekkürler. – Faiz

İlgili konular