Neo4j - Lista wyszukiwania z obopólną liczbą

Stworzyłem kilka węzłów i relacji w neo4j i chcę zapytać o cypher. Wyjaśniam więcej na ten temat, jak poniżej.

UserID  UserName 
------  --------
1       UserA
2       UserB
3       UserC
4       UserD
5       UserE
6       UserF

a relacje między węzłami są następujące:

UserID  FriendID  ApprovalStatus (1.Request Accepted, 2.Request Pending)
------  --------  ------------------------------------------------------
1       2         1 
1       3         2 
1       6         2 
2       3         1 
2       4         1 
2       5         2 
3       6         1
3       5         2

Mój użytkownik logowania to węzeł 1 (np. UserA) i próbuje przeszukać węzeł. i oczekuję tego wyniku od neo4j.

Record #  UserID  UserName  MutualCount       ApprovalStatus 
--------  ------  --------  ---------------   --------------  
1         2       UserB      1 (eg. node 3)   1               
2         3       Userc      0                2  
3         4       UserD      0                null
4         5       UserE      0                null
5         6       UserF      0                2 

sprawdź następujące punkty: Rekord # 1: Node3 (UserC) jest wzajemny między Node1 i Node2, ponieważ ma status ApprovalStatus = 1 dla obu węzłów.

Nagraj # 2:
Nie ma wzajemnego połączenia między węzłem 1 i węzłem 3, a statusem zatwierdzenia = 2, ponieważ węzeł 1 wysłał żądanie do węzła 3, ale jest jeszcze w toku.

Nagraj # 3:
Ta sama sytuacja, jak wspomniano w Record # 2

Nagraj # 4 i 5:
tutaj nie ma wzajemności między węzłem 1 i węzłem 4, a statusem zatwierdzenia = null, ponieważ węzeł 1 nigdy nie wysłał żądania do węzła 4 i węzła 5.

Stworzyłem kilka fałszywych danychtutaj

Możesz więc przetestować zapytanie. Próbuję uzyskać ten wynik z ostatnich 10-15 dni, ale nie mogę osiągnąć sukcesu. Czy jest jakiś sposób na osiągnięcie tego wyniku.

Dzięki.

questionAnswers(1)

yourAnswerToTheQuestion