微科社区,轻松开发从此开始! 请登陆 免费注册

微科社区

当前位置:首页 > 数据库 > SQL Server > 疑难问题 >

判定表内为空的问题

时间:2017-02-26 04:01  浏览:努力统计中...
有一个数据库A A内有很多张表,如何用SQL语句查询所有的表,并且返回没有数据的表名? SQL code select distinct a.name from sys.objects a join sys.sysindexes b on a. OBJECT_id = b.id where a.type = U and b.
有一个数据库A
A内有很多张表,如何用SQL语句查询所有的表,并且返回没有数据的表名?

SQL code
select distinct a.name from sys.objects a join sys.sysindexes b on a.OBJECT_id=b.id where a.type='U' and b.rows=0




++

SQL code
--mytest 为你的库名select distinct a.name from mytest.sys.objects a join mytest.sys.sysindexes b on a.OBJECT_id=b.id where a.type='U' and b.rows=0


如果有条件索引,以上语句有bug,这样比较准确,
SQL code
select a.name from sys.objects a inner join sys.sysindexes b on a.object_id=b.id where a.type='U' and b.indid=1 and b.rows=0


SQL code
use [数据库A] select a.name from sys.objects a inner join sys.sysindexes b
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线------