Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Đếm số bảng và cột chính xác trong database MySQL

Tóm tắt

Truy vấn INFORMATION_SCHEMA.COLUMNS với COUNT(DISTINCT TABLE_NAME) và COUNT(COLUMN_NAME) để lấy số lượng bảng và cột của một database.

Truy vấn

SELECT 
    COUNT(DISTINCT TABLE_NAME) AS TotalTable,
    COUNT(COLUMN_NAME) AS TotalColumn
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'ten_database';

Ví dụ với database 'sample'

mysql> SELECT COUNT(DISTINCT TABLE_NAME) AS TotalTable, COUNT(COLUMN_NAME) AS TotalColumn
    -> FROM INFORMATION_SCHEMA.COLUMNS
    -> WHERE TABLE_SCHEMA = 'sample';
+------------+-------------+
| TotalTable | TotalColumn |
+------------+-------------+
| 123        | 287         |
+------------+-------------+

Giải thích

  • COUNT(DISTINCT TABLE_NAME): đếm số bảng duy nhất (mỗi bảng xuất hiện nhiều lần = số cột).
  • COUNT(COLUMN_NAME): đếm tổng số dòng trong COLUMNS = tổng số cột tất cả bảng.
  • TABLE_SCHEMA = tên database.

Mở rộng

-- Chi tiết từng bảng
SELECT TABLE_NAME, COUNT(*) AS ColumnCount
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'sample'
GROUP BY TABLE_NAME
ORDER BY ColumnCount DESC;