ĐƯỢC RỒI. Cuối cùng tôi đã tạo một chế độ xem hoạt động:
SELECT TOP (100) PERCENT id, CAST(CASE WHEN IsNumeric(MyCol) = 1 THEN MyCol ELSE NULL END AS bigint) AS MyCol
FROM dbo.MyTable
WHERE (MyCol NOT LIKE '%[^0-9]%')
Cảm ơn AdaTheDev và CodeByMoonlight . Tôi đã sử dụng hai câu trả lời của bạn để đạt được điều này. (Tất nhiên cũng cảm ơn các đại diện khác)
Bây giờ khi tôi tham gia với các cols bigint khác hoặc làm điều gì đó như 'CHỌN * TỪ MyView nơi mycol =1', nó trả về kết quả chính xác mà không có lỗi. Tôi đoán là CAST trong chính truy vấn khiến trình tối ưu hóa truy vấn không nhìn vào bảng gốc như Christian Hayter đã nói có thể đang xảy ra với các chế độ xem khác