I was trying out a query and it was returning an error which I cannot explain. (5 th query ).
Can someone help me understand what is causing the error.
DROP TABLE #temp
SELECT * INTO #temp
FROM
(
SELECT 'A_100' Col
union all
SELECT 'A_101'
union all
SELECT 'A_102'
union all
SELECT 'A_103'
union all
SELECT 'A_104'
union all
SELECT 'B_104'
) a
-- 1
SELECT * FROM #temp where col like 'A%'
-- 2
SELECT replace(col,'A_','') FROM #temp where col like 'A%'
--3
SELECT cast(replace(col,'A_','') as INT) FROM #temp where col like 'A%'
-- 4
SELECT * FROM
(
SELECT cast(replace(col,'A_','') as INT) Num
FROM #temp a where col like 'A%'
) A
-- 5
SELECT * FROM
(
SELECT cast(replace(col,'A_','') as INT) Num
FROM #temp a where col like 'A%'
) A
WHERE A.Num>102