• Yeah, you'll have a few joins, it's still not that many and the indexing should be very simple. The one thing I'd suggest, instead of trying to pivot the data into columns, return it as rows, you'll have fewer joins and simpler queries that way. You can change the layout on the client side so that it's pivoted.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning