--===== Create the test table and populate it CREATE TABLE #Temp (Data VARCHAR(100), OutPut BIGINT) INSERT INTO #Temp (Data) SELECT TOP 20000 '~`!@#$%^&*()_2+-={}[]:";<>,.?/|\",.~`' FROM Master.sys.SysColumns sc1 CROSS JOIN Master.sys.SysColumns sc2
CREATE FUNCTION dbo.DigitsOnly (@SomeString VARCHAR(8000))RETURNS BIGINT AS BEGIN DECLARE @CleanString VARCHAR(8000) SET @CleanString = '' SELECT @CleanString = @CleanString + SUBSTRING(@SomeString,t.N,1) FROM dbo.Tally t WHERE t.N <= LEN(@SomeString) AND SUBSTRING(@SomeString,t.N,1) LIKE '[0-9]' RETURN CAST(@CleanString AS BIGINT) END
drop table #Tempgo--===== Create the test table and populate it CREATE TABLE #Temp (Data VARCHAR(100), OutPut BIGINT) INSERT INTO #Temp (Data) SELECT TOP 20000 '~`!@#$%^&*()_2+-={}[]:";<>,.?/|\",.~`'+RIGHT(NEWID(),12) FROM Master.sys.SysColumns sc1 CROSS JOIN Master.sys.SysColumns sc2