Bir kullanıcı veri tabanımdaki düğümlere başvuran bir dizi UUID iletiyor. Onun USER düğümünü bu diğer düğümlerin her birine bağlamak istiyorum. Zorluk, UUID'lerin bana verildiği sırayı bilmek istiyorum. Uuıdlerin iseNeo4j cypher sorgusunda bir değeri artırma
Yani: [AAA, CCC, BBB], şöyle bir şey yürütmek istiyoruz: Elbette
(user)-[:REL {order: 1}]->(:THING {name:"AAA"})
(user)-[:REL {order: 2}]->(:THING {name:"CCC"})
(user)-[:REL {order: 3}]->(:THING {name:"BBB"})
, birden tablolara yapmak istemiyoruz. Bu listeyi parametre olarak geçmek istiyorum.
MATCH(u:USER {id:{id}})
MATCH(t:THING) where t.name in {that_list}
CREATE (u)-[:REL {order: ???}]->(t)
Not ???
. Bu vahşidir.
Bu nasıl başarılabilir? Bir döngü kullanarak testleri geçtim, ama bunu yapabilmem gerektiğini hissediyorum.
Kullanım durumlarınızı bilmiyorum, ancak "THING" düğümlerini sırayla birbirine bağlamayı düşündünüz, böylece "sipariş" özelliklerine sahip olmanıza gerek yok mu? Bunun gibi: '(kullanıcı) - [: REL] -> (: THING {isim:" AAA "}) - [: REL] -> (: THING {isim:" BBB "}) - [: REL] -> (: THING {name: "CCC"}) '? – cybersam
@cybersam bu çok zekice. Benim durumumda yapabileceğime emin değilim, ama çok grafikli. Bunu sevdim. –