Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Kích thước bảng và chỉ mục trong SQL Server

sp_spaceused cung cấp cho bạn kích thước của tất cả các chỉ mục được kết hợp.

Nếu bạn muốn kích thước của mỗi chỉ mục cho một bảng, hãy sử dụng một trong hai truy vấn sau:

SELECT
    i.name                  AS IndexName,
    SUM(s.used_page_count) * 8   AS IndexSizeKB
FROM sys.dm_db_partition_stats  AS s 
JOIN sys.indexes                AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
WHERE s.[object_id] = object_id('dbo.TableName')
GROUP BY i.name
ORDER BY i.name

SELECT
    i.name              AS IndexName,
    SUM(page_count * 8) AS IndexSizeKB
FROM sys.dm_db_index_physical_stats(
    db_id(), object_id('dbo.TableName'), NULL, NULL, 'DETAILED') AS s
JOIN sys.indexes AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
GROUP BY i.name
ORDER BY i.name

Kết quả thường hơi khác một chút nhưng trong vòng 1%.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách chọn dữ liệu một tuần trước từ ngày hôm nay

  2. Làm thế nào để xử lý vệ sinh thoát khỏi các dấu ngoặc kép có thể bị đánh bại bởi SQL injection trong SQL Server?

  3. Làm cách nào để cập nhật lược đồ cơ sở dữ liệu SQL Server của tôi?

  4. SqlConnection.Close () bên trong câu lệnh using

  5. Không thể thu nhỏ cơ sở dữ liệu ‘chỉ đọc’ | Thu hẹp nhật ký giao dịch khi sử dụng nhóm AlwaysOn Av sẵn sàng