sql - 生成数据库指标的简单查询?

标签 sql database sybase

给定一个包含许多表的数据库 (Sybase),我想编写一个 SQL 查询来计算每个表的行数和列数。

不幸的是,我的 SQL 有点生疏了。我可以生成表名:

select name from sysobjects where type = 'U'   

但是如何绑定(bind)返回给T的数据库:

select count(*) from T

超出我的范围。甚至有可能做这种事情吗?

最佳答案

我不使用 Sybase,但在线文档表明行数在 systabstats 中,列在 syscolumns 中。

SELECT sysobjects.name, 
      (SELECT COUNT(*) FROM syscolumns WHERE syscolumns.id = sysobjects.id) AS cols,
       systabstats.rowcnt
    FROM sysobjects
    JOIN systabstats 
    ON (sysobjects.id = systabstats.id AND sysobjects.type = 'U' AND systabstats.indid = 0)

关于sql - 生成数据库指标的简单查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4252129/

相关文章:

java - Oracle 序列事务性

php - 单个自动编号而不是多个键

sybase - 如果表不存在,如何仅创建表?使用 "object_id(' 表') IS NULL"不起作用?

excel - copyfromrecordset 返回空白列

MySQL服务器存储过程语法错误

c# - Sybase AdoNet4 AseClient v16.x (客户端无法建立连接)

Sql Server - nvarchar 字段上的索引

sql - 在 SQLPLUS 中正确格式化表

mysql - IN() 函数中使用的用户定义 session 变量返回意外结果

database - 帮助为 Twitter 网络应用程序设计数据库