如何在 MySQL 中选择列数最多的表?


你可以使用 INFORMATION_SCHEMA.COLUMNS 来获取列数最多的表。

语法如下所示 −

SELECT TABLE_NAME, COUNT(*) AS anyAliasName
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY yourAliasName DESC
LIMIT 1;

以下是选择列数最多的表查询。我们获得此结果是因为我们将计数设置为 DESC 并使用 GROUP BY TABLE_NAME −

mysql> SELECT TABLE_NAME, COUNT(*) as TOTAL_COUNT
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY TOTAL_COUNT DESC
LIMIT 1;

这将产生以下输出 −

+-----------------------------------+-------------+
| TABLE_NAME                        | TOTAL_COUNT |
+-----------------------------------+-------------+
| table_lock_waits_summary_by_table | 68          |
+-----------------------------------+-------------+
1 row in set (0.12 sec)

你也可以使用以下查询获取最少的列数。我们获得此结果是因为我们将计数设置为 ASC 并使用 GROUP BY TABLE_NAME −

mysql> SELECT TABLE_NAME, COUNT(*) as TOTAL_COUNT
FROM INFORMATION_SCHEMA.COLUMNS
GROUP BY TABLE_NAME
ORDER BY TOTAL_COUNT ASC
LIMIT 1;

这将产生以下输出 −

+-----------------------+-------------+
| TABLE_NAME            | TOTAL_COUNT |
+-----------------------+-------------+
| removenullrecordsdemo | 1           | 
+-----------------------+-------------+
1 row in set (0.14 sec)

更新日期: 30-Jul-2019

97 次浏览

开启您的 职业生涯

完成课程,获得认证

开始
广告