Giống như bạn đã nói, openrowset sẽ hoạt động, nhưng ngoài ra, cách duy nhất tôi có thể nghĩ ra là:
- Thay đổi cả proc 1 và proc 2 thành các chức năng dựa trên bảng
- Thay đổi proc 2 thành CLR và đưa tất cả logic vào đó
- Chuyển các bảng xung quanh dưới dạng các tham số có giá trị của bảng
Có thêm thông tin về lý do cho điều này ở đây:
https://connect.microsoft.com/SQLServer/feedback / details / 294571 / cải thiện-chèn-thực thi http://dataeducation.com/revisiting- tối ưu hóa isnull-Coalesce-and-the-Perils-of-micro-tối ưu hóa /