# Read Relationships Now that we know how to connect data using **relationship Attributes**, let's see how to get and read the objects from a relationship. ## Select a Hero First, add a function `select_heroes()` where we get a hero to start working with, and add that function to the `main()` function: {* ./docs_src/tutorial/relationship_attributes/read_relationships/tutorial001_py310.py ln[94:98,108:111] hl[94:98,111] *} ## Select the Related Team - Old Way Now that we have a hero, we can get the team this hero belongs to. With what we have learned **up to now**, we could use a `select()` statement, then execute it with `session.exec()`, and then get the `.first()` result, for example: {* ./docs_src/tutorial/relationship_attributes/read_relationships/tutorial001_py310.py ln[94:103] hl[100:103] *} ## Get Relationship Team - New Way But now that we have the **relationship attributes**, we can just access them, and **SQLModel** (actually SQLAlchemy) will go and fetch the corresponding data from the database, and make it available in the attribute. ✨ So, the highlighted block above, has the same results as the block below: {* ./docs_src/tutorial/relationship_attributes/read_relationships/tutorial001_py310.py ln[94:98,105] hl[105] *} /// tip The automatic data fetching will work as long as the starting object (in this case the `Hero`) is associated with an **open** session. For example, here, **inside** a `with` block with a `Session` object. /// ## Get a List of Relationship Objects And the same way, when we are working on the **many** side of the **one-to-many** relationship, we can get a list of of the related objects just by accessing the relationship attribute: {* ./docs_src/tutorial/relationship_attributes/read_relationships/tutorial002_py310.py ln[94:100] hl[100] *} That would print a list with all the heroes in the Preventers team: