1. using DBCC DBREINDEX or DBCC INDEXDEFRAG or drop index create index or alter index statements 2. well run DBCC SHOWCONTIG to see how much fragmentation you have in your indexes. I defragment my indexes when the fragmentation reaches 10-20% based on the table.
some people have a scheduled job that rebuilds the indexes every day in low traffic hours. SQL server 2005 has also improved greatly on live index rebuild.
USE DatabaseName --Enter the name of the database you want to reindex
DECLARE @TableName varchar(255)
DECLARE TableCursor CURSOR FOR SELECT table_name FROM information_schema.tables WHERE table_type = 'base table'
OPEN TableCursor
FETCH NEXT FROM TableCursor INTO @TableName WHILE @@FETCH_STATUS = 0 BEGIN DBCC DBREINDEX(@TableName,' ',90) FETCH NEXT FROM TableCursor INTO @TableName END