MySQL के INFORMATION_SCHEMA.TABLES से TABLE_ROWS कॉलम का उपयोग करके एकाधिक डेटाबेस में समान नाम वाली टेबलों की कुल पंक्ति संख्या प्राप्त कर सकते हैं।
उदाहरण: दो डेटाबेस में समान टेबल नाम
1. 'web' डेटाबेस में टेबल
mysql> CREATE TABLE DemoTable1568 (Name VARCHAR(20));
mysql> INSERT INTO DemoTable1568 VALUES('Chris'), ('Bob'), ('David');
2. 'sample' डेटाबेस में टेबल
mysql> USE sample; mysql> CREATE TABLE DemoTable1568 (Id INT); mysql> INSERT INTO DemoTable1568 VALUES(101), (102), (103), (104);
3. कुल पंक्तियां गिनें
mysql> SELECT SUM(TABLE_ROWS) AS TotalNumberOfRows
-> FROM INFORMATION_SCHEMA.TABLES
-> WHERE TABLE_NAME = 'DemoTable1568';
4. परिणाम
+-------------------+ | TotalNumberOfRows | +-------------------+ | 7 | +-------------------+
महत्वपूर्ण नोट
TABLE_ROWSInnoDB के लिए अनुमानित मान है- सटीक गिनती के लिए
SELECT COUNT(*)उपयोग करें TABLE_SCHEMAसे डेटाबेस फ़िल्टर कर सकते हैं
सटीक गिनती के लिए (धीमा लेकिन सटीक)
SELECT
(SELECT COUNT(*) FROM web.DemoTable1568) +
(SELECT COUNT(*) FROM sample.DemoTable1568) AS TotalRows;
सभी डेटाबेस में सभी टेबल की पंक्तियां
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' ORDER BY TABLE_ROWS DESC;
विशिष्ट डेटाबेस के लिए
SELECT SUM(TABLE_ROWS)
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA IN ('web', 'sample')
AND TABLE_NAME = 'DemoTable1568';