Pardon the long post here. I have a scenario where I'm trying to normalize one table with 200+ columns into 14 tables. This would theoretically be a big boost in performance, both reads and writes. Yet there are thousands of sprocs/queries/apps that select from the one big table. I thought I could just write a view that joins the multiple tables together. While this technically works, performance with the view is very slow because the view has to join all 14 tables, regardless of which ones it actually needs for SELECT and WHERE clauses. Is there a better way to accomplish this? Do I need to write several views, perhaps one for each join scenario? Any advice or thoughts on this are appreciated.