计算数据库中表的大小和行数?

Count the size and rows of the tables in a database?

我正在尝试创建一个查询来列出数据库中表的大小和表的行数。

到目前为止,这是我的查询:-

SELECT table_name, table_rows
    ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024) AS `Size (GB)`
    FROM 
      INFORMATION_SCHEMA.TABLES
    ORDER BY,
      (DATA_LENGTH + INDEX_LENGTH)
    DESC
    WHERE TABLE_SCHEMA = 'my_db';

但我一直遇到语法问题。有人可以指出我做错了什么吗?

SELECT
  TABLE_NAME AS `Table`,
  table_rows,
  ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 ) AS `Size (MB)`
FROM
  information_schema.TABLES
  WHERE TABLE_SCHEMA = 'your-db'
ORDER BY
  (DATA_LENGTH + INDEX_LENGTH)
DESC
LIMIT 10;

这对我有用。