Попробуйте этот запрос:
declare @tbl table (id int, name varchar(15), salary varchar(20));
declare @mySalary int = 1400;
insert into @tbl
select 1,'John','[1300 - 2000]' union all
select 2,'Aby','[600 - 1000]' union all
select 3,'Mike','[1000 - 1500]'
select id, name, salary from (
select id, name, salary,
convert(int, substring(salary, openBrcktIdx + 1, hyphenIdx - openBrcktIdx - 2)) lowerBound,
convert(int, substring(salary, hyphenIdx + 2, closeBrcktIdx - hyphenIdx - 2)) upperBound
from (
select *,
charindex('-', salary) hyphenIdx,
charindex('[', salary) openBrcktIdx,
charindex(']', salary) closeBrcktIdx
from @tbl
) t
) t where @mySalary between lowerBound and upperBound