BI SQL # 140 : SQL Server DBA Scripts : Database size growth as a pivot table
Hi Folks,
In this article we are going to cover the Database size growth as a pivot table.
In this post we are going to discuss following points:
- Problem Statement of SQL Script:
- Description of SQL Script:
- SQL Script Output Column
- SQL Script Code
- User Level to execute
Problem Statement of SQL Script:
Get Database size growth as a pivot table.
Description of SQL Script:
This Transact-SQL script uses the backup history to analyze the growth of the databases size over last twelve months and expose the average size of each month per database in a pivot table.
SQL Script Output Column
SQL Script Code
DECLARE @startDate DATETIME; SET @startDate = GetDate(); SELECT PVT.DatabaseName ,PVT.[0] ,PVT.[-1] ,PVT.[-2] ,PVT.[-3] ,PVT.[-4] ,PVT.[-5] ,PVT.[-6] ,PVT.[-7] ,PVT.[-8] ,PVT.[-9] ,PVT.[-10] ,PVT.[-11] ,PVT.[-12] FROM ( SELECT BS.database_name AS DatabaseName ,DATEDIFF(mm, @startDate, BS.backup_start_date) AS MonthsAgo ,CONVERT(NUMERIC(10, 1), AVG(BF.file_size / 1048576.0)) AS AvgSizeMB FROM msdb.dbo.backupset AS BS INNER JOIN msdb.dbo.backupfile AS BF ON BS.backup_set_id = BF. backup_set_id WHERE NOT BS.database_name IN ( 'master' ,'msdb' ,'model' ,'tempdb' ) AND BF.[file_type] = 'D' AND BS.backup_start_date BETWEEN DATEADD(yy, - 1, @startDate) AND @startDate GROUP BY BS.database_name ,DATEDIFF(mm, @startDate, BS.backup_start_date) ) AS BCKSTAT PIVOT(SUM(BCKSTAT.AvgSizeMB) FOR BCKSTAT.MonthsAgo IN ( [0] ,[-1] ,[-2] ,[-3] ,[-4] ,[-5] ,[-6] ,[-7] ,[-8] ,[-9] ,[-10] ,[-11] ,[-12] )) AS PVT ORDER BY PVT.DatabaseName
User Level to execute
300
Hope you will like the Database size growth as a pivot table.
If you really like reading my blog and understood at least few thing then please don’t forget to subscribe my blog.
If you want daily link and analysis or interesting link go to following website which will give @ your inbox please subscribe our following link resource blog :
For More information related to BI World visit my Mentalist Blog
SQL Server Mentalist >> SQL Learning Blog
Business Intelligence Mentalist >> BI World
Infographic Mentalist >> Image worth explaining thousand Words
Microsoft Mentalist >> MVC,ASP.NET, WCF & LinQ
DBA Mentalist >>Advance SQL Server Blog
Microsoft BI Mentalist >> MS BI Development Update
Connect With me on