Size of tables of a MySQL database

Query to show the size of the tables of a MySQL database. The output would be in MB and sorted in descending order.

SELECT

table_schema as `Database`,

table_name AS `Table`,

round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB`

FROM information_schema.TABLES

ORDER BY (data_length + index_length) DESC;