簡體   English   中英

MYSQL - 計算每個表中的行數

[英]MYSQL - count number of rows in each table

我想知道我的數據庫中每個表中有多少行。 我已經做到了

select count(*) _tablename_; 

但是,我需要在每張桌子上都這樣做 - 而且有很多。 我用表名和行數打印輸出的最佳方法是什么?

SELECT table_name, table_rows
    FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA = '<your db>';

我也希望您意識到您的查詢中有一個錯誤:它缺少一個FROM

以下查詢將返回每個表中的行數,但它似乎並不總是返回精確值

SELECT table_name, table_rows
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = '<your db>';

TABLE_ROWS :分區中的表行數。 對於分區的 InnoDB 表,TABLE_ROWS 列中給出的行數只是 SQL 優化中使用的估計值,可能並不總是准確的...更多https://dev.mysql.com/doc/mysql-infoschema-摘錄/5.5/en/partitions-table.html

除了其他人的 SQL 查詢外,還可以使用 Workbench GUI 來獲取每個表的行數。 為此,啟動 Workbench -> Connect to Db -> 右鍵單擊​​ Db 並選擇“Schema Inspector”(如下面的屏幕截圖所示 - 我突出顯示了“Rows”列):

在此處輸入圖片說明

哈。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM