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

STATISTICS XML trong SQL Server là gì?

Trong SQL Server, bạn có thể sử dụng XML SET STATISTICS XML để tạo ra thông tin chi tiết về cách một câu lệnh T-SQL được thực thi.

Thông tin này được cung cấp dưới dạng một tài liệu XML được định dạng tốt.

Sau khi SET STATISTICS XML được đặt thành ON , mỗi câu lệnh tiếp theo được phản ánh trong đầu ra bởi một tài liệu XML.

Mỗi tài liệu XML chứa văn bản của câu lệnh, sau đó là các chi tiết của các bước thực thi.

Kết quả hiển thị thông tin về thời gian chạy, chẳng hạn như chi phí, chỉ mục được truy cập và loại hoạt động được thực hiện, thứ tự tham gia, số lần một hoạt động vật lý được thực hiện, số hàng mà mỗi nhà điều hành vật lý tạo ra, v.v.

Ví dụ

Đây là một ví dụ đơn giản để chứng minh.

SET STATISTICS XML ON;

SELECT 
    c.CityName, 
    s.StateProvinceName AS State, 
    c.LatestRecordedPopulation AS Population
FROM Application.Cities c
INNER JOIN Application.StateProvinces s
ON c.StateProvinceID = s.StateProvinceID
WHERE c.LatestRecordedPopulation > 2000000
ORDER BY c.LatestRecordedPopulation DESC;

Kết quả:

Khi bạn thực hiện việc này bằng công cụ đồ họa như SSMS hoặc Azure Data Studio (trong hình), bạn có thể sẽ thấy một kế hoạch truy vấn đồ họa giống như trong ảnh chụp màn hình.

Trong trường hợp này, bạn có thể nhấp vào các tab khác nhau để xem kết quả thực tế, cũng như các dữ liệu thống kê khác.

Đây là những gì sẽ xảy ra khi tôi nhấp vào Kết quả tab:

Trong trường hợp này, tôi có thể xem các kết quả thực tế, cùng với một hàng khác có Sơ đồ trình chiếu XML. Nhấp vào hàng đó sẽ mở tài liệu XML trong một cửa sổ mới:

Và đây là những gì sẽ xảy ra khi tôi nhấp vào Hoạt động hàng đầu tab:

Cách tắt tính năng này

Đặt STATISTICS XML thành ON ảnh hưởng đến tất cả các câu lệnh T-SQL tiếp theo cho đến khi nó bị tắt.

Để tắt nó, chỉ cần chạy lại bằng cách sử dụng OFF thay vì ON :

SET STATISTICS XML OFF;

STATISTICS XML Thay thế STATISTICS PROFILE

Theo tài liệu của Microsoft, SET STATISTICS XML nên được sử dụng thay vì SET STATISTICS PROFILE .

LẬP HỒ SƠ THỐNG KÊ và ĐẶT THỐNG KÊ XML là bản sao của nhau. Trước đây tạo ra đầu ra dạng văn bản; cái sau tạo ra đầu ra XML. Trong các phiên bản tương lai của SQL Server, thông tin kế hoạch thực thi truy vấn mới sẽ chỉ được hiển thị thông qua câu lệnh SET STATISTICS XML, không phải câu lệnh SET STATISTICS PROFILE.

XML THỐNG KÊ so với Bao gồm Kế hoạch Thực thi Thực tế

Nếu Bao gồm kế hoạch thực thi thực tế được chọn trong SSMS, SET STATISTICS XML không tạo ra đầu ra XML Showplan. Xóa Bao gồm kế hoạch thực thi thực tế trước khi sử dụng SET STATISTICS XML .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy xuất dữ liệu từ quy trình được lưu trữ có nhiều bộ kết quả

  2. Sao lưu / khôi phục SQL Server so với tách / đính kèm

  3. Số liệu hiệu suất máy chủ SQL để dẫn đầu trò chơi

  4. Lập lịch chạy quy trình được lưu trữ trên máy chủ SQL

  5. OPENROWSET không chấp nhận các biến cho các đối số của nó (SQL Server)