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

Sự khác biệt giữa sys.views, sys.system_views và sys.all_views trong SQL Server

Ba trong số các dạng xem danh mục hệ thống trong SQL Server bao gồm sys.views , sys.system_viewssys.all_views .

Ba chế độ xem danh mục này đều cung cấp siêu dữ liệu về các chế độ xem trong cơ sở dữ liệu, nhưng có một sự khác biệt nhỏ giữa mỗi chế độ xem.

Đây là những gì mỗi người làm:

sys.views
Trả về tất cả các chế độ xem do người dùng xác định.
sys.system_views
Trả về tất cả các chế độ xem hệ thống được cung cấp cùng với SQL Server.
sys.all_views
Hiển thị tất cả các chế độ xem hệ thống và do người dùng xác định.

Nói cách khác, chế độ xem cuối cùng kết hợp các kết quả của hai chế độ xem trước đó (nó trả về cả hệ thống chế độ xem do người dùng xác định).

Ví dụ

Dưới đây là một ví dụ chứng minh sự khác biệt về kết quả do các chế độ xem này trả về.

USE Music;

SELECT COUNT(*) AS [User Defined]
FROM sys.views;

SELECT COUNT(*) AS [System]
FROM sys.system_views;

SELECT COUNT(*) AS [All Views]
FROM sys.all_views;

Kết quả:

+----------------+
| User Defined   |
|----------------|
| 3              |
+----------------+
(1 row affected)
+----------+
| System   |
|----------|
| 494      |
+----------+
(1 row affected)
+-------------+
| All Views   |
|-------------|
| 497         |
+-------------+
(1 row affected)

Nếu chúng ta cộng kết quả của hai truy vấn đầu tiên với nhau, chúng ta sẽ nhận được cùng một kết quả là sys.all_views :

USE Music;

SELECT 
(SELECT COUNT(*) FROM sys.views) +
(SELECT COUNT(*) FROM sys.system_views)
AS Result;

Kết quả:

+----------+
| Result   |
|----------|
| 497      |
+----------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Liệt kê các truy vấn đang chạy trên SQL Server

  2. Cách DB_NAME () hoạt động trong SQL Server

  3. Khám phá các tùy chọn chờ khóa ưu tiên thấp trong SQL Server 2014 CTP1

  4. 7 cách tìm hàng trùng lặp trong SQL Server khi bỏ qua bất kỳ khóa chính nào

  5. Tìm các đối tượng được tham chiếu trong SQL Server:sys.dm_sql_referenced_entities