SQL Rebuild Indexes In Masse

I have this database that I would like to tune. I ran this script I found to look at index fragmentation. Most indexes are coming back with avg_fragmentation_in_percent in excess of 70%. Is there any way to reindex all these indexes in one command or do I need to have one script that build a long script full of reindex commands, one per index?
SELECT ps.database_id, ps.OBJECT_ID,ps.index_id, b.name,ps.avg_fragmentation_in_percent
FROM sys.dm_db_index_physical_stats (DB_ID('POWMT'), NULL, NULL, NULL, NULL) AS ps
INNER JOIN sys.indexes AS b ON ps.OBJECT_ID = b.OBJECT_ID
AND ps.index_id = b.index_id
WHERE ps.database_id = DB_ID() and ps.avg_fragmentation_in_percent>10.0
ORDER BY ps.OBJECT_ID

Open in new window

LVL 1
rwheeler23Asked:
Who is Participating?
 
HwkrangerCommented:
You can do it all in one.  See this article, it includes a script as well.

http://www.mssqltips.com/tip.asp?tip=1791
0
 
Anthony PerkinsCommented:
This script will intelligently rebuild/reorganize your indexes, based on the fragmentation percent:
http://ola.hallengren.com/Documentation.html
0
 
rwheeler23Author Commented:
Both answers were excellent
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.