lets have nodes connected in friend relationship. want query 2 of them each time, use skip , limit maintain this.
however, if adds friend in between calls, messes results (since 'whole list' pushed 1 index forward).
for example, lets had list of friends (ordered parameter):
a b c d
i query first time, b (skipped 0 , limited 2). adds friend named e, list e b c d. second query return b c (skipped 2 , limited 2). notice b returned twice because skipping method not aware of changes db had.
is there way return 2 each time starting considering previous query? example, if knew b last returned query, provide query , query 2 next, getting c d (which correct) instead of b c.
i tried finding solution , read start , indexes not sure how this.
thanks time!
you store timestamp when friend
relationship created , order property.
when friend
relationship created, add timestamp property:
match (a:person {name: "bob"}), (b:person {name: "mike"}) create (a)-[r:friend]->(b) set r.created = timestamp()
then when paginating through friends 2 @ time can order created
property:
match (a:person {name: "bob"})-[r:friend]->(friends) return friends skip {page_number_times_page_size} limit {page_size} order r.created
you can parameterize query page size (the number of friends return) , number of friends skip based on page want.
Comments
Post a Comment