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

Chỉ mục máy chủ SQL thích hợp để chỉ chèn lược đồ

Chỉ chèn Chỉ mục:Tốt nhất là nên để lại các lược đồ chỉ chèn mỏng mà không có bất kỳ chỉ mục nào nhưng việc có bất kỳ chỉ mục nào trên bảng sẽ ảnh hưởng đến hiệu suất của các hoạt động chèn của bạn.

Còn việc tạo chỉ mục trên feeditem_id thì sao và effectiveDateUTC các trường như

CREATE NONCLUSTERED INDEX NIX_feeditem_id_effectiveDateUTC
ON dbo.spotquotes(feeditem_id ASC, effectiveDateUTC DESC)
GO

và bây giờ hãy viết truy vấn của bạn như .....

;WITH LastestRecords
 AS(
   SELECT Id 
        ,feeditem_id 
        ,value_ask
        ,value_bid
        ,effectiveDateUTC
        ,ROW_NUMBER() OVER (PARTITION BY feeditem_id ORDER BY ffectiveDateUTC DESC) AS RN
  FROM spotquotes
  )
 SELECT Id 
        ,feeditem_id 
        ,value_ask
        ,value_bid
        ,effectiveDateUTC
 FROM LastestRecords
 WHERE RN = 1

HOẶC

Tạo một chỉ mục như sau

CREATE NONCLUSTERED INDEX NIX_feeditem_id_Id
ON dbo.spotquotes(feeditem_id ASC, ID DESC)
GO

Truy vấn

;WITH LastestRecords
 AS(
   SELECT Id 
        ,feeditem_id 
        ,value_ask
        ,value_bid
        ,effectiveDateUTC
        ,ROW_NUMBER() OVER (PARTITION BY feeditem_id ORDER BY Id DESC) AS RN
  FROM spotquotes
  )
 SELECT Id 
        ,feeditem_id 
        ,value_ask
        ,value_bid
        ,effectiveDateUTC
 FROM LastestRecords
 WHERE RN = 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. Thư mục Vòng lặp SSIS có thể thay đổi

  2. Logic báo cáo sổ cái trong quy trình được lưu trữ

  3. Sao chép bảng thay đổi các giá trị của 1 cột và chèn nó vào cùng một bảng

  4. Chèn hình ảnh vào cơ sở dữ liệu

  5. Chuyển đổi ‘datetimeoffset’ thành ‘time’ trong SQL Server (Ví dụ T-SQL)