Giả sử bạn sẽ KHÔNG CÓ BẤT KỲ SỐ TIÊU CỰC NÀO Bạn phải ép kiểu nvarchar thành Int cho mệnh đề between của bạn và đặt giá trị mặc định cho trường hợp nó không thể truyền như sau:
SELECT *
From Vendor_Value_Table
WHERE (Vendor_Value_Table.Feature_ID in (17,19))
AND(
value_text like 'Dhol Wala$Shahnai Wala'
OR
(SELECT CASE WHEN ISNUMERIC(value_text) = 1 THEN CAST(value_text AS INT) ELSE -1 END) between 0 and 100
)
Chúng tôi đã chọn -1 làm becuase mặc định nếu nó không được ép kiểu không thể đánh số, mệnh đề giữa cần phải luôn là false.
(NÓ SẼ CHỈ PHẢN ỨNG CHO CÁC CON SỐ ÍT HƠN INT RANGE)