SQL 2005 - 查找具有最多行的表的查询

Pat*_*ick 4 sql t-sql sql-server

我搜索了一会儿但是空了......希望这里有人可以提供帮助.

是否有可以在数据库(SQL Server 2005)上运行的查询,它将返回每个表中的行数?

Gal*_*ian 7

你可以尝试像这样:

SELECT 
    [TableName] = so.name, 
    [RowCount] = MAX(si.rows) 
FROM 
    sysobjects so, 
    sysindexes si 
WHERE 
    so.xtype = 'U' 
    AND 
    si.id = OBJECT_ID(so.name) 
GROUP BY 
    so.name 
ORDER BY 
    2 DESC
Run Code Online (Sandbox Code Playgroud)

  • 不要再使用sysobjects和sysindexes系统表 - 拜托!它们很快就会被弃用,SQL Server 2005引入了新的"sys"模式,它具有所有必要的视图 - sys.tables,sys.indexes等 - 请改用它们! (3认同)
  • Gah,丑陋的连接语法:( (2认同)