INFORMATION_SCHEMA.TABLES से औसत पंक्ति लंबाई प्राप्त करें
किसी टेबल की औसत पंक्ति लंबाई (बाइट्स में) जानने के लिए INFORMATION_SCHEMA.TABLES के AVG_ROW_LENGTH कॉलम को क्वेरी करें।
सिंटैक्स
SELECT AVG_ROW_LENGTH FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'your_table_name';
टेबल और डेटा
mysql> CREATE TABLE DemoTable (
StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
StudentName VARCHAR(100)
);
mysql> INSERT INTO DemoTable(StudentName) VALUES('John'), ('Larry'), ('Sam'), ('Mike');
क्वेरी और परिणाम
mysql> SELECT AVG_ROW_LENGTH FROM information_schema.tables WHERE TABLE_NAME = 'DemoTable';
+----------------+
| AVG_ROW_LENGTH |
+----------------+
| 4096 |
+----------------+
व्याख्या
- AVG_ROW_LENGTH: औसत पंक्ति आकार बाइट्स में (InnoDB के लिए अनुमानित)
- DATA_LENGTH: कुल डेटा आकार
- INDEX_LENGTH: इंडेक्स आकार
- DATA_LENGTH + INDEX_LENGTH = कुल टेबल आकार
अन्य उपयोगी कॉलम
SELECT
TABLE_NAME,
TABLE_ROWS,
AVG_ROW_LENGTH,
DATA_LENGTH,
INDEX_LENGTH,
(DATA_LENGTH + INDEX_LENGTH) AS total_size,
ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024, 2) AS size_mb
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'your_database';
नोट
- InnoDB के लिए
AVG_ROW_LENGTHअनुमानित होता है TABLE_ROWSभी InnoDB के लिए अनुमानित है- सटीक गिनती के लिए
SELECT COUNT(*)उपयोग करें
स्टोरेज इंजन अंतर
| इंजन | AVG_ROW_LENGTH सटीकता |
|---|---|
| MyISAM | सटीक |
| InnoDB | अनुमानित |
| MEMORY | निश्चित |