The below SQL script will return a list of tables in a database along with the table sizes in MB.
select object_name(id) [Table Name],
[Table Size] = convert (varchar, dpages * 8 / 1024) + 'MB'
from sysindexes where indid in (0,1)
order by dpages desc
You will get a report like the below;
![SQL Report the disk size each table is using in a database](https://geekshangout.com/wp-content/uploads/2021/10/sql-tablle-sizes.png)