Tôi đang cố gắng tham gia một vài hàng từ chế độ xem từ xa đến bảng cục bộ. Chế độ xem có khoảng 300 triệu hàng, vì vậy tôi muốn sử dụng gợi ý truy vấn XÓA để tất cả 3 triệu hàng không phải chuyển vào máy tính của tôi.
SELECT R.Something, L.ID, L.Something
FROM [dbo].[LocalTable] L
INNER JOIN (
SELECT TOP 100 Something, L_ID FROM [RemoteServer].[RemoteDB].[dbo].[RemoteTable]
) R
ON L.ID = R.L_ID
Điều này trả về 100 hàng, như tôi mong đợi, và về cơ bản không mất thời gian, như tôi mong đợi.
Tuy nhiên,
SELECT R.Something, L.ID, L.Something
FROM [dbo].[LocalTable] L
INNER REMOTE JOIN (
SELECT TOP 100 Something, L_ID FROM [RemoteServer].[RemoteDB].[dbo].[RemoteTable]
) R
ON L.ID = R.L_ID
bắt đầu trả về hàng ngàn hàng. Tôi bỏ nó sau vài giây, nhưng nó đã ở mức hàng chục - hàng trăm ngàn.
Làm thế nào một gợi ý truy vấn có thể thay đổi tập kết quả của tôi?
TOP
khôngORDER BY
có nghĩa là vô nghĩa, nhưng sẽ không tốt hơn nhiều nếu bạn nắm bắt được hàng n hàng đầu nếu chúng không thực sự nằm trong tập hợp mà bạn quan tâm - đâu là điểm để nắm lấy top 100 hàng ở đây? 4)