Worse than that, it's been my experience (in SQL Server 7) that a SELECT such as yours will create a separate instance of the view, in memory, for each named instance in the SELECT. If the views have a lot of rows, that could quickly drive your server into a "swap file" run. Perhaps they fixed this "little" problem in SQL Server 2000?
One way to get around this problem is to use CASE statments instead of SELECTs to create each field.
--Jeff Moden