way to increase the performance of SQL Server is to design
tables as thin (narrow) as possible. The more rows one database page of
8K contains, the better. It decreases disk IO / buffer activitiy, it decreases "reads".
Use smalldatetime (4 bytes)
instead of datetime (8 bytes). DATE (3 bytes) is an option starting with SQL Server 2008.
If you don't need
the range of int, use smallint or tinyint.
For flags and
switches use the bit type.
Below 30 characters
use char not nullable, varchar otherwise. nchar and nvarchar doubles the space
usage. Don't use them unless you really need them, for example
to store UNICODE Japanese or Chinese text.
only 4 bytes while money takes 8 bytes. If you don't need the
range or accuracy of money, just apply smallmoney.
Thin design is
especially helpful with performance of large tables with millions
SQL Server performance difference with single or multi column primary key?