Why does this query against the Movie database return multiple nodes

I am getting started with Neo4j and I am going through the Movie dataset from the built-in examples that comes with Neo4j browser

The first query that was presented in the tutorial is:

MATCH (tom {name: "Tom Hanks"}) RETURN tom

I was expecting to get one node as a result, but on executing I get 4 nodes instead. The textual representation of the output is:

════════════════════════════════╕
│"tom" │
╞════════════════════════════════╡
│{"name":"Tom Hanks","born":1956}│
├────────────────────────────────┤
│{"name":"Tom Hanks","born":1956}│
├────────────────────────────────┤
│{"name":"Tom Hanks","born":1956}│
├────────────────────────────────┤
│{"name":"Tom Hanks","born":1956}│
└────────────────────────────────┘

Any one kind enough to provide an explanation for this? Or guide to where such explanation is provided? Thanks!

Hi Finlay,
Please provided the label(s) for the node that you wish to match.
For example, MATCH (tom:Person {name: "Tom Hanks"}) RETURN tom;

Without the label, your query will match all types of nodes that have a name property of 'Tom Hanks' and will return all the matched nodes.

Does this help?

Thanks for the tip.

I ran your suggested query:

MATCH (tom:Person {name: "Tom Hanks"}) RETURN tom;

and indeed it now returns only one node...

but then again I ran my original query:

MATCH (tom {name: "Tom Hanks"}) RETURN tom

and now, it is also returning only one results!!!

I do not know what is going on...:man_shrugging:

but thanks again for your suggestion.