Hi Lars ,
Thanks for your reply.
I have reviewed my data model.
This are the step which i generally follow to retrieve O/P:
1. Filter the data
2. Join with the table
3. Aggregate
4. Top
for all the queries.
I am joining the tables first and doing top on the O/P from the join query.
To flatten the data model, i need to add more functionality specific view or please provide if there are other ways to flatten the data model.