cancel
Showing results forΒ
Search instead forΒ
Did you mean:Β

Head's Up! Site maintenance this Wednesday, February 1. Disruptions expected as we migrate the forums.

## max property value within a list of nodes

Node

Hi All!

I'm attempting to identify a way to create a relationship between two nodes, based on the value of one of their properties.  If I was to psuedo-code talk it out, it might be something like this:

match the node (n:asset) with a transaction id of "12345" and a secondProperty value of 0

Also, match  the node (n:asset) with a transaction id of "12345", that has a  secondProperty value that is the largest value of all nodes that have a transaction id of "12345"

Creation a relationship [:relationship] between these two nodes

.... my messy version might be something like:

match (n:asset {transactionId: "12345" , secondProperty: 0})

match (m:asset {transactionId: "12345") where secondProperty = max(secondProperty.value)

create (n)-[r:RELATIONSHIP]->(m)

return n,r,m

I know this is wrong but could use some help righting the ship?  Any thoughts?   I've attempted using the apoc.agg.maxItems function, but I have difficulty following the examples and documentation.

-Isaac

1 ACCEPTED SOLUTION
Graph Maven

Try this:

match (a:Asset) where a.transactionId = "12345"
with min(a.secondProperty) as mn, max(a.secondProperty) as mx

match (b:Asset) where b.secondProperty = mn and b.transactionId = "12345"
match (c:Asset) where c.secondProperty = mx and c.transactionId = "12345"

merge (b)-[:MAX_SECOND_PROPERTY]->(c)

return b, c
3 REPLIES 3
Graph Maven

Try this:

match (a:Asset) where a.transactionId = "12345"
with min(a.secondProperty) as mn, max(a.secondProperty) as mx

match (b:Asset) where b.secondProperty = mn and b.transactionId = "12345"
match (c:Asset) where c.secondProperty = mx and c.transactionId = "12345"

merge (b)-[:MAX_SECOND_PROPERTY]->(c)

return b, c

You're a miracle worker.  Thank you so much!

Graph Maven

Am glad of some help to you! Thanks for your appreciation.

Nodes 2022

NODES 2022, Neo4j Online Education Summit

All the sessions of the conference are now available online

Neo4j Resources