Prev |  | Next

## 7.9. Find friends based on similar tagging

Graph

To find people similar to me based on the taggings of their favorited items, one approach could be:

- Determine the tags associated with what I favorite.
- What else is tagged with those tags?
- Who favorites items tagged with the same tags?
- Sort the result by how many of the same things these people like.

Query

    START me=node:node_auto_index(name = "Joe")
    MATCH me-[:favorite]->myFavorites-[:tagged]->tag<-[:tagged]-theirFavorites<-[:favorite]-people
    WHERE NOT(me=people)
    RETURN people.name as name, count(*) as similar_favs
    ORDER BY similar_favs DESC

The query returns the list of possible friends ranked by them liking similar stuff that are not yet friends.

Result

name | similar_favs
--- | ---
2 rows
0 ms
`"Sara"` | `2`
`"Derrick"` | `1`

Copyright © 2012 Neo Technology

Prev | Up | Next
| Home |