SELECT DISTINCT
SUBSTRING(volume_mount_point, 1, 1) AS [Unidade]
,cast((cast(total_bytes as float)/1024/1024/1024) as numeric(20,2)) AS [Tamanho(GB)]
,cast((cast(available_bytes as float)/1024/1024/1024) as numeric(20,2)) AS [Disponível(GB)]
,ISNULL(ROUND(available_bytes / CAST(NULLIF(total_bytes, 0) AS FLOAT) * 100, 2), 0) as [Porcentagem disponível]
FROM
sys.master_files AS f
CROSS APPLY
sys.dm_os_volume_stats(f.database_id, f.file_id)
order by 1