使用sp_msforeachtable这个系统存储过程。
创建一张临时表,它有2个字段,[table_name]和[total_records]。
然后使用sp_msforeachtable来处理,把结果插入上面创建的临时表中。如果total_records为0的,说明此表没有任何记录。
drop table #temp_t go create table #temp_t ( [table_name] nvarchar(128), [total_records] int ) go exec sp_msforeachtable @command1 = 'insert into #temp_t([table_name], [total_records]) select ''?'', count(*) from ?' ; go select [table_name],[total_records] from #temp_t order by [total_records] desc