Cuối cùng hãy thử cái này:
exec (@query)
Nếu bạn không có dấu ngoặc, SQL Server sẽ giả định giá trị của biến là tên thủ tục được lưu trữ.
HOẶC
EXECUTE sp_executesql @query
Và không nên vì FULL JOIN.
Nhưng tôi hy vọng bạn đã tạo các bảng tạm thời:#TrafficFinal, # TrafficFinal2, # TrafficFinal3 trước đó.
Xin lưu ý rằng có những cân nhắc về hiệu suất giữa việc sử dụng EXEC và sp_executesql. Vì sp_executesql sử dụng bộ nhớ đệm câu lệnh bắt buộc giống như một sp.
Chi tiết khác tại đây
.
Một lưu ý khác, có lý do tại sao bạn sử dụng sql động cho trường hợp này, khi bạn có thể sử dụng truy vấn như hiện tại, coi như bạn không thực hiện bất kỳ thao tác truy vấn nào và thực thi nó theo cách của nó?