要从 SQL Server 的 master 数据库中查找任何数据库中任何表的列数,可以使用以下查询:
SELECT
t.NAME AS TableName,
SCHEMA_NAME(schema_id) AS SchemaName,
COUNT(*) AS ColumnCount
FROM
sys.tables AS t
INNER JOIN sys.columns AS c ON t.OBJECT_ID = c.OBJECT_ID
GROUP BY
t.NAME, SCHEMA_NAME(schema_id)
ORDER BY
SchemaName, TableName;
这个查询将返回一个结果集,其中包含每个表的名称、架构名称和列数。
在这个查询中,我们使用了 sys.tables
和 sys.columns
系统视图来获取表和列的信息。我们使用 INNER JOIN
将这两个视图连接在一起,以便我们可以计算每个表中的列数。我们使用 GROUP BY
和 COUNT(*)
函数来计算每个表中的列数,并使用 ORDER BY
对结果进行排序。
领取专属 10元无门槛券
手把手带您无忧上云