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

Làm cách nào để buộc truy vấn không sử dụng chỉ mục trên một bảng nhất định?

SELECT *
FROM MyTable WITH (INDEX(0))
WHERE MyIndexedColumn = 0

Truy vấn thông thường sẽ sử dụng chỉ mục trên MyIndexedColumn, nhưng do gợi ý bảng, thay vào đó nó sẽ quét bảng.

SELECT *
FROM MyTable WITH (INDEX(IndexName))
WHERE MyIndexedColumn = 0

Truy vấn thông thường sẽ sử dụng chỉ mục trên MyIndexedColumn, nhưng do gợi ý về bảng, thay vào đó, nó sẽ sử dụng chỉ mục có tên IndexName.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nếu không tồn tại, không thành công trên SQL CE

  2. Thay thế một phần của chuỗi bằng chữ hoa tương đương từ bảng tạm thời tham chiếu chéo - tsql

  3. Thêm thông tin đăng nhập vào máy chủ được liên kết trong SQL Server (Ví dụ T-SQL)

  4. datetime so với datetime2 trong SQL Server:Sự khác biệt là gì?

  5. Cách khắc phục “Câu lệnh EXECUTE không thành công vì mệnh đề WITH RESULT SETS của nó đã chỉ định 1 (các) tập kết quả…” trong SQL Server