I was wondering if it is possible to use the result from an `Entity Framework` join query. 

Please ignore whether the join query makes sense or not. I'm just trying to explain my issue rather than having a correct query. I simplified it quite a bit for clarity sake:

```
var firstJoinQuery = (from company in this.TimesheetsContext.companies
                      join country in this.TimesheetsContext.Countries
                      on company.CountryId equals country.Id
                      where (country == 'USA')
                      select new { CountryId = country.Id }).Distinct();

var secondJoinQuery = (from country in this.TimesheetsContext.Countries
                      join firstJoinQuery
                      on country.CountryId equals firstJoinQuery.CountryId
                      select new { Country = country }).Distinct();

```

I'd swear I've done it before but I just can't get the result of one join to be used in the second or the third.

The reason I want to do this is to keep things easier to read as it's not always obvious while using EF and complex queries. 

My current work-around veer towards an actual stored procedure as it will definitely be easier to read but if possible, I'd like to give it a shot in EF first.

Thanks.