MySQL में सभी डेटाबेस की गैर-खाली टेबल (कम से कम एक पंक्ति वाली) सूचीबद्ध करने के लिए information_schema.TABLES का उपयोग करें।
क्वेरी
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_ROWS >= 1 AND TABLE_TYPE = 'BASE TABLE' ORDER BY TABLE_SCHEMA, TABLE_NAME;
महत्वपूर्ण कॉलम
TABLE_SCHEMA- डेटाबेस नामTABLE_NAME- टेबल नामTABLE_ROWS- अनुमानित पंक्ति संख्या (InnoDB में सटीक नहीं)TABLE_TYPE- 'BASE TABLE' वास्तविक टेबल के लिए, 'VIEW' व्यू के लिए
सटीक गिनती के लिए
TABLE_ROWS InnoDB में अनुमानित होता है। सटीक गिनती के लिए:
SELECT TABLE_SCHEMA, TABLE_NAME,
(SELECT COUNT(*) FROM information_schema.TABLES t2 WHERE t2.TABLE_SCHEMA = t1.TABLE_SCHEMA AND t2.TABLE_NAME = t1.TABLE_NAME) AS exact_count
FROM information_schema.TABLES t1
WHERE TABLE_TYPE = 'BASE TABLE';
या डायनामिक SQL का उपयोग करके प्रत्येक टेबल के लिए COUNT(*) चलाएं।
केवल उपयोगकर्ता टेबल (सिस्टम टेबल छोड़कर)
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS
FROM information_schema.TABLES
WHERE TABLE_ROWS >= 1
AND TABLE_TYPE = 'BASE TABLE'
AND TABLE_SCHEMA NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys')
ORDER BY TABLE_SCHEMA, TABLE_NAME;