You can break up queries like that by doing the IsNumeric query to populate a temp table, then doing the rest of the action on the temp table, or by joining to the temp table.
-- This query separates the numbers from the text
select ID
into #T
from MyTable
where IsNumeric(MyColumn) = 1;
-- Do "math stuff" in this query
select *
from MyTable
where ID in (select ID from #T);
This avoids the "error converting" issues you're running into, and usually works well enough in terms of performance.
- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon