How to get Table Names with Record Count in SQL Server Database

Consider our company is working on some audit process and they want to log the table names with record count in Audit table during different hours of the day OR we are planning for storage and want to know which table has the most records and plan the storage accordingly.

The below query will return us all the tables from SQL Server Database with record count. We will be using System tables sysindexes and sys.tables to get our record count with table names.

i.rows AS RecordCnt 
FROM   sysindexes i
INNER JOIN sys.tables t
WHERE  t.is_ms_shipped = 0  

Fig 1: Get Record Count with Table Names from SQL Server Database

Video Demo: How to Get Record Count for all the tables on SQL Server Instance


  1. Do you want to improve the performance of your business? Of course you do! Maybe you're unsure where to start, or how to go about it. This checklist of questions will give you a good overview of your business's strengths, weaknesses and areas that need improvement. You may find some of them tough - or a little confronting - but be honest! The path to improving your business performance starts today. account bookkeeping