使用SQL语句获取数据库中的字段数?

Ash*_*Ash 13 sql database field get

如何使用SQL语句获取数据库中的字段/条目数?

Jho*_*re- 28

mmm所有表中的所有字段?假设标准(mssql,mysql,postgres),您可以通过information_schema.columns发出查询

  SELECT COUNT(*) 
  FROM INFORMATION_SCHEMA.COLUMNS 
Run Code Online (Sandbox Code Playgroud)

或按表分组:

  SELECT TABLE_NAME, COUNT(*) 
  FROM INFORMATION_SCHEMA.COLUMNS 
  GROUP BY TABLE_NAME
Run Code Online (Sandbox Code Playgroud)

如果多个模式在同一个DB中具有相同的表名,那么您还必须包含模式名称(即:dbo.Books,user.Books,company.Books等)否则您将得到错误的结果.所以最好的做法是:

SELECT TABLE_SCHEMA, TABLE_NAME, COUNT(*) 
FROM INFORMATION_SCHEMA.COLUMNS 
GROUP BY TABLE_SCHEMA, TABLE_NAME
Run Code Online (Sandbox Code Playgroud)